¡Buenas!
Como sabréis, ando metido en aprender C++. Ahora estoy haciendo un asteroids y me ha surgido un problema. Lo planteo aquí porque la duda es a nivel de lógica, no de lenguaje.
El caso es que yo tengo una nave que tiene:
-Un punto de origen X e Y
-Cuatro vértices periféricos cuyas coordenadas se guardan en coordenadas polares (es decir, un vector que parte del centro de la nave).
Y tengo un asteroide que tiene:
-Un punto de origen X e Y
-Nueve vértices periféricos cuyas coordenadas se guardan en coordenadas polares (es decir, un vector que parte del centro de la asteroide).
La cosa es que quiero calcular si colisionan, y no se cómo hacerlo. ¿Alguien tiene alguna idea de cómo podría hacerlo?
Por si acaso ayuda, este es el código en C++: http://pastebin.com/CTnnG2G5
Te dejo unas cuantas funciones, supongo que si sabes de que va el tema te servirán ;)
Son funciones a bajo nivel para colisión entre puntos cajas segmentos polígonos etc.. combinandolas consigues lo que pides ;)
Pero oye.. ahora que pienso xD..
Tienes la mod_chipmunk que hace esto de una forma muy eficiente ;)
Verás, para que tenga chipmunk primero quiero tenerla. Yo programo porque disfruto programando, no obteniendo resultados, así que prefiero hacerme yo mis pajas mentales a recojerlas de una librería xDD
En cuanto pueda pienso sustituir la librería gráfica que uso por una mía. Bueno, si soy capaz.
Honorable fin, el trabajo hecho por uno mismo siempre es mas gratificante, pero no siempre es el mejor hecho ;)
Dale caña!
Quote from: Erkosone on July 17, 2013, 06:41:23 PM
Honorable fin, el trabajo hecho por uno mismo siempre es mas gratificante, pero no siempre es el mejor hecho ;)
Dale caña!
Jajajajaja!!!! Que razón tienes :D