Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - kittie4man

#1
General Programadores / SDL para Symbian (S60 3rd FP1)
07 de Mayo de 2010, 09:23:30 PM
Hola a todos!!

Ando por aca porque es uno de los pocos foros (si no el unico) donde hay gente que realmente sabe y quizas me pueden solucionar mi problema u orientarme a como solucionarlo.

Mi problema es que quiero usar la implementacion de SDL para Symbian S60 3rd FP1 pero no lo he conseguido.
Ya probe muchas cosas y no consegui correr un simple codigo con SDL en un N95-3.
Lei por ahi que si o si es necesario el ARM Compiler pero no estoy seguro ya que no hay mucha informacion especifica y las personas que hicieron algo, las contacte y no me pueden responder (por tiempo, ganas o lo que sea).

Si alguno quiere saber mas de mi problema al usar la implementacion de SDL aca hay mucha mas info ya que hice la pregunta en el foro oficial de nokia.
Discussion Boards > Development Platforms > Symbian C++ > Symbian Tools & SDKs > SDL + S60 3rd FP1 (The endless thread)
Link: http://discussion.forum.nokia.com/forum/showthread.php?t=199327

Mi idea es hacer juegos que usen el acelerometro para Symbian. Mas que nada por un tema personal, nada comercial.
Si alguno sabe como implementar correctamente SDL para Symbian le voy a agradecer mucho la respuesta.
O, si alguno sabe algun motor o API para hacer juegos con acelerometro para Symbian tambien le voy a agradecer info.

Desde ya muchas gracias.
Salu2
Juan Pablo
#2
Muchas gracias.

Yo sabia que en este foro tendria una respuesta rapida y efectiva.
Voy a probar las cosas que mencionan y pronto les comentare.

Muchas gracias
Salu2
Juan Pablo desde Argentina
#3
Hola a todos!!

Despues de buscar por la web sin exito (espero no haber buscado mal :P) recurro a este foro que me a traido MUCHAS alegrias en cuanto a solucion de problemas cuando en mi tiempo libre programaba con OPENGL, SDL y C++.

El tema es asi:
Tengo una aplicacion en java cliente/servidor que al instalar crea automaticamente una DB según el mapeo de los elementos (vista, documento, etc) que heredan de un elemento (Element). Un adaptador mapea la estructura de estos elementos y crea la base de datos en MySQL (y MS SQL, etc).
Mi problema es que actualmente no tenemos un control de version automatica para la base de datos y cada vez que modificamos la base de datos tenemos que revisar que version tenia el cliente y hacerle los cambios a medida.

Mi intencion es hacer alguna clase en java (seria lo ideal) o aplicacion externa (como ultimo recurso) que controle la version del cliente y la del producto a instalar para realizar los cambios automaticamente (o lo mas automatico posible).
Tambien se me pidio que la version este identificada con un numero. Si no fuera por el numero se podria hacer un mapeo de los elementos y obtener la estructura de la DB para trabajar con esas 2 cosas pero con el numero me mareo ya.

Espero que me puedan ayudar.

Desde ya muchas gracias.
Salu2
Juan Pablo desde Argentina
#4
Inteligencia Artificial / Re: IA para Coches
07 de Octubre de 2008, 09:21:21 PM
Tal vez esto te sirva:

http://www.miata.net/sport/Physics/

Salu2
Juan Pablo desde Argentina
#5
Programación gráfica / Re: Entendiendo glPushMatrix y glPopMatrix
25 de Septiembre de 2008, 06:14:04 PM
Muchas gracias a ambos.

Voy a probar lo que me dijeron y ya les comentare.

Nuevamente muchas gracias por la pronta ayuda.

Lo que me gustaría saber es que función cumplen el glPushMatrix y glPopMatrix ya que según tenia entendido, todo lo que se hiciera entre ellos no afectaría a nada del resto.
Porque ocurre eso de que dentro de glPushMatrix y glPopMatrix pinto un objeto de x color y el resto de los objetos que pinte (de ahi en adelante, fuera de push y pop) se pintaran del mismo color?
Que sentido tiene poner glPushMatrix y glPopMatrix entonces?

Mas allá de que este solucionado lo del circulo, el translate y el color, me gustaría entender un poco como funcionan y para que sirven exactamente glPushMatrix y glPopMatrix.
Eh buscado pero no encontré una definición que entienda 100%.

Salu2
Juan Pablo desde Argentina

EDIT:
Anda TODO de maravilla, muchas gracias por todo.
#6
Programación gráfica / Entendiendo glPushMatrix y glPopMatrix
25 de Septiembre de 2008, 05:07:04 PM
Hola a todos!!

Voy directo al grano:
En mi proyecto tengo una clase que pinta unos tanques así:
Código (cpp) [Seleccionar]
glPushMatrix();
glEnable( GL_TEXTURE_2D );
glEnable(GL_BLEND);

glBindTexture( GL_TEXTURE_2D, _tGunCanon );

glTranslatef( _x, _y, 0.0);

glRotatef( _angleView, 0.0, 0.0, 1.0 );

//glScalef(1.0,1.0,1.0);

glPolygonMode(GL_FRONT, GL_FILL);
glBegin(GL_QUADS);
glTexCoord2f(1.0, 1.0); glVertex3f( -(_width+1.0),   _heigth,  0.0 );// Top Left Of The Texture and Quad
glTexCoord2f(1.0, 0.0); glVertex3f( -(_width+1.0), -(_heigth), 0.0 );// Bottom Left Of The Texture and Quad
glTexCoord2f(0.0, 0.0); glVertex3f(   _width,    -(_heigth), 0.0 );// Bottom Right Of The Texture and Quad
glTexCoord2f(0.0, 1.0); glVertex3f(   _width,  _heigth,  0.0 );// Top Right Of The Texture and Quad
glEnd();
glDisable( GL_TEXTURE_2D );
glDisable( GL_BLEND );
glPopMatrix();


Ahora, en el bucle principal del juego, en determinado momento, pinto un circulo y un cuadrado (ambos sin relleno) de esta manera:
Código (cpp) [Seleccionar]
GLfloat x=0.0, y=0.0, z=0.0;

glPushMatrix();
glTranslatef( px, py, 0.0 );
glColor3f(1.0, 0.0, 0.0);
glBegin(GL_LINE_STRIP);
glVertex3f( px-5, py-8, 0.0 );// Top Left Of The Texture and Quad
glVertex3f( px-5, py+8, 0.0 );// Bottom Left Of The Texture and Quad
glVertex3f( px+5, py+8, 0.0 );// Bottom Right Of The Texture and Quad
glVertex3f( px+5, py-8, 0.0 );// Top Right Of The Texture and Quad
glVertex3f( px-5, py-8, 0.0 );// Top Left Of The Texture and Quad
glEnd();
glPopMatrix();

glPushMatrix();
glTranslatef( px, py, 0.0 );
glColor3f(0.5, 0.5, 1.0);
glBegin(GL_LINE_STRIP);
for (int angle = 0 ; angle < 180 ; ++angle)
{
x = radio * sin(angle);
y = radio * cos(angle);
glVertex3f( x , y, z);
}
glEnd();
glPopMatrix();


El render completo despues de pintar TODOS los objetos, lo hago así:
Código (cpp) [Seleccionar]
SDL_GL_SwapBuffers();
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glLoadIdentity();


El tema es el siguiente.
1.- Al usar color para pintar estos objetos se me colorean el resto de los objetos que sean pintados después.
2.- En ese metodo tengo 2 objetos creados con sus propias translaciones. La translacion del ultimo objeto (el circulo) creado se realiza y la primera (el cuadrado) no se hace. La translacion es la misma en ambos casos.
3.- Esa es la mejor forma de crear una circulo sin relleno? Esto viene a que NO se ve como quiero, parece como que tuviera un borde ancho y con irregularidades, si no se entiendo pongo una captura para que lo vean.

Mi pregunta es si tengo que poner un glColor3f(1.0, 1.0, 1.0); obligatoriamente al final de este metodo para que no pinte el resto de los objetos renderizados o hay algo mal en la implementacion de glPushMatrix, glPopMatrix o glLoadIdentity??

Espero que alguien pueda ayudarme.

Desde ya muchas gracias.

Salu2
Juan Pablo desde Argentina
#7
General Grafistas / [Pedido] Graficos muy simples
26 de Agosto de 2008, 02:02:42 AM
Hola a todos!

Soy programador y como pasa en el 90% de los casos, no tengo los conocimientos para hacer graficos aunque mas no sea, decentes.
Este mensaje es para ver si alguna alma caritativa me puede brindar unos graficos sencillos.

Lo que necesito es graficos de tanques medio futuristas (por decirlo de alguna manera) vistos desde arriba con pequeñas modificaciones, como representando diferentes niveles. Por ejemplo, un tanque con 1 cañon, el mismo tanque con 2 cañones, mas grande, otro color, etc. Diferentes modificaciones para cada nivel.
De estos tanques necesitaria 3 o 4, con o sin modificaciones, yo me encargaria de eso hacer mas, las modificaciones y otras cosas.

Mi idea es hacer un pequeño juego donde tengo diferentes armas (los tanques) que tienen diferentes tipo de tiro, rapido, fuerte, certero, expansivo etc, etc.
Les muestro el que tengo ahora para que vean que es MUY sencillo lo que necesito.

<= esta es la base del tanque
<= esta es la parte del canon en si.

Lo tengo en 2 partes porque lo muevo de forma individual, todos tengo que separarlos en 2 partes.
Como veran, el que tengo ahora es muy sencillo y lo que necesito tambien.

En fin, cualquier cosa me preguntan y lo aclaro.

Desde ya muchas gracias.
Juan Pablo
#8
General Programadores / VC++ 2005 te odio
30 de Julio de 2008, 11:58:24 PM
probaste de registrar manualmente la dll??
#9
[Pregunta] OpenGL embebido en GUI creada con xul
Hola a todos!!

Queria preguntar si alguien conoce alguna tecnología o forma de embeber OpenGL en un interfaz gráfica creada con XUL (basado en mozilla) y que la solución o tecnología sea multiplataforma?? (al menos win2 y linux).

La idea es mostrar el resultado del programa en un entorno 3D y que sea posible actualizarlo en el momento. Digo OpenGL porque quiero poder tener una cámara orbital, todo tipo de shapes, etc.

Si alguno conoce la forma de hacer esto o alguna tecnología alternativa que lo haga (y sea multiplataforma) se lo voy a agradecer mucho.

Salu2
Juan Pablo
#10
Cita de: "Buffon"
Cita de: "kittie4man"
Cita de: "Buffon"hazte una miniaplicación que sólo haga eso y resuélvelo, debuggalo, etc.

http://mail.google.com/mail/?ui=2&view=js&name=js&ver=80lCHVuPxfI&am=T_E4pcLnE08YZQ

Que es el link ese??
Parece ser un link a un mail de google. =S

imagínate si estaba dormido xD

http://betterexplained.com/articles/measure-any-distance-with-the-pythagorean-theorem/

Jajaja, muchas gracias por el link, esta muy bueno por lo poco que vi.
Después lo vere con mas cuidado.

Salu2
Juan Pablo
#11
Cita de: "tamat"En teoría si, pero no tendras perspectiva, ese es el unico problema, es decir, las cosas que esten lejos se veran igual de grandes.

En escenarios 3D con perspectiva si quieres arrastrar objetos con el raton tienes que reproyectar la posición del raton sobre el plano perpendicular a la camara que pasa por el centro del objeto y trasladar el objeto a ese punto.

Muchas gracias por la respuesta.

Si, me imagine que ese era el problema, osea que iba a tener que proyectar la posición del mouse para que encajen con la perspectiva.

Inicialmente no tengo pensado rotar la cámara, pero quería contemplarlo para que en un futuro, en caso de que desee hacerlo, no romperme la cabeza.

Muchas gracias.

Salu2
Juan Pablo
#12
Muchas gracias por la rapidez en responder y mas por la calidad de la respuesta.

Yo antes trabajaba con glOrtho pero según tengo entendido es para hacer 2D con OpenGL no? se puede hacer control de camara con glOrtho??? Tipo rotar la escena y eso con glLookAt o alguna alternativa?

Salu2
Juan Pablo
#13
Hola nuevamente!!

Paso a comentar mi problema lo mas detallado posible.
En un miniframework que tengo (y mantengo) inicio la perspectiva con:
ratio = ( GLfloat )SCREEN_WIDTH / ( GLfloat )SCREEN_HEIGHT;
glViewport( 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT );

glMatrixMode( GL_PROJECTION );
glLoadIdentity( );

gluPerspective( 45.0, ratio, 0.1, 1024.0 );

glMatrixMode( GL_MODELVIEW );
glLoadIdentity( );

Despues, creo un objeto que no es mas que un cuadrado con textura.
Este lo creo, translado y roto en un mismo lugar:
glPushMatrix();
glTranslatef( _x, _y, _z);

glRotatef( _angleView, 0.0, 0.0, 1.0 );

glBegin(GL_QUADS);
glTexCoord2f(0.0, 0.0); glVertex3f(-30.0,  30.0, 7.5);
glTexCoord2f(0.0, 1.0); glVertex3f(-30.0, -30.0, 7.5);
glTexCoord2f(1.0, 1.0); glVertex3f( 30.0, -30.0, 7.5);
glTexCoord2f(1.0, 0.0); glVertex3f( 30.0,  30.0, 7.5);
glEnd();
glPopMatrix();

Hasta acá (según creo) todo bien. (no?)

Ahora, en el translate tengo que hacer que z (_z) sea -700 para que el objeto se vea, osea para que aparezca en la pantalla.
Eso me trae problemas ya que cuando yo ubico el objeto en la pos x=10 e y=10 y al tener z en -700 queda diferente de la x e y real de la pantalla.
Para que me entiendan les muestro esta captura:



Si se fijan donde esta el puntero del mouse, el objeto y comparan con lo que dice en la consola de abajo (x/ymouse y pj_x/y que son del cuadrado) veran que no coincide.

Mi pregunta es.
Porque tengo que situar mi objeto en -700?? Que hace que mi camara este tan adelante.

Espero que alguno me pueda ayudar.
Gracias de antemano.

Salu2
Juan Pablo
#14
Cita de: "Buffon"hazte una miniaplicación que sólo haga eso y resuélvelo, debuggalo, etc.

http://mail.google.com/mail/?ui=2&view=js&name=js&ver=80lCHVuPxfI&am=T_E4pcLnE08YZQ

Que es el link ese??
Parece ser un link a un mail de google. =S
#15
Cita de: "[EX3"]Verifica de la funcion de calculo de angulo te devuelve el angulo correcto. Al menos asi la tengo yo en mi libreria y esta funciona correctamente. Si el error esta en la funcion de OpenGL ahi no se decirte por que no programo con esta api.

Salu2...

Ex3, muchas gracias.

El problema no estaba en la función que usaba para calcular el ángulo (o eso creo por el momento) sino en el manejo de la cámara y glLookAt.

La cámara es algo que nunca voy a poder dominar ya que hace tiempo que tengo problemas y no los puedo solucionar. Pensé que ya estaba solucionado lo de la cámara y glLookAt pero ahora veo que no estaban solucionados.

Nuevamente, muchas gracias por la respuesta.

Salu2
Juan Pablo





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.