Ayuda con las matemáticas !!!

Iniciado por BlackM4ster, 10 Abril 2013, 20:36 PM

0 Miembros y 3 Visitantes están viendo este tema.

BlackM4ster

Sé la velocidad con la que se mueve hacia la cara (constante)
Sé la cara con la que choca
Sé la dirección del personaje
- Pásate por mi web -
https://codeisc.com

Kilowatt

#21
Pues como escribir matematicas aqui es tedioso y encima no se entiende bien, te subo una imagen con la idea escrita en papel si te parece bien.

Edito: Ya esta.

http://img46.imageshack.us/img46/5752/003lbp.jpg

Si hay algo que no se entiende (no me extrañaria, tengo una caligrafia vergonzosa) dimelo.

BlackM4ster

Muchas gracias  ;-)
Lo de la velocidad nueva, no lo había pensado jajaja
- Pásate por mi web -
https://codeisc.com

Kilowatt

Seguramente todo esto se pueda optimizar, pero eso ya lo vas mirando tu que ahi estoy un poco verde. Quiza seria mejor idea para comprobar cual de los dos sentidos es el correcto que te fijes en los modulos de los vectores resta entre la velocidad y las posibles direcciones, y el menor es el correcto. Creo que es mejor calcular unas cuantas sumas y restas que un arccos. Suerte.

BlackM4ster

La optimización, viene luego  ;-)
Te dejo un enlace para que pruebes:

Sin colisiones
https://www.dropbox.com/s/0m9mhmrgmhmt7an/Juego%20Isc.rar
Con colisiones
https://www.dropbox.com/s/6il280vqch0u2r4/Juego%20Isc%20con%20Colisiones.rar
- Pásate por mi web -
https://codeisc.com

Kilowatt

Siento no haberlo podido probar antes. Has hecho bastantes progresos, te felicito.

Aunque me imagino que querras seguir desarrollandolo, asi que tengo un par de preguntas. Cuando te acercas a un objeto, aparecen unas cajas con los vertices marcados. ¿Esas son las bounding boxes de las que hablamos? Si asi es, en muchas ocasiones resulta que no estan alineadas con la caja de texturas, asi que puedes penetrar en la textura aunque las cajas en si no se intercalen.

Parece que las colisiones entre estas cajas se detectan perfectamente y que has conseguido que permanezca solo la componente tangencial de la velocidad, asi que quiza sea solo un problema de alinear las cajas a las texturas, y con eso quedaria bien. Bueno, tu eres el que esta manejando el proyecto de primera mano, asi que ya me cuentas si estoy diciendo disparates. Suerte!

BlackM4ster

jajaj Si, si, tienes razón. Al final, decidí hacerlo con las dos alineadas a los ejes, ya que al ser cubos, no se nota mucha diferencia. Los cubos que se ven cuando estás cerca son los bounding, que solo se activan si estás a una distancia considerable para que el CPU no se sobrecargue de cálculos absurdos  :laugh:

Lo seguiré desarrollando cuando tenga tiempo (exámenes), aunque por ahora, lo básico ya lo tengo: movimiento, cámaras, colisiones... ya veremos como acaba este proyecto xD

Para ser mi primer programa en C++ con OpenGL, no está nada mal. Con vuestra ayuda he sacado varias cosas. Gracias !!!  ;-)
- Pásate por mi web -
https://codeisc.com