Estoy en el punto de mi juego donde necesito agregar un sistema de colisión. Probé jBullet, y aunque funcionó, no era lo que estaba buscando. Solo quiero una manera simple de probar si dos árboles de cuadro de límite orientado (OBB) están colisionando.
Iba a hacer colisión usando el árbol. Haga un AABB para broadphase, luego, si eso pasa, pruebe si cada OBB en un árbol colisiona con el otro árbol.
Encontré algunas cosas en Internet, pero no pude entenderlas por completo. ¿Lo que estoy pidiendo es un sitio web o recurso que explique bien las colisiones 3D OBB?
Aprendí que GJK es más rápido que SAT, y parece ser capaz de decirme hasta dónde penetran las cajas entre sí. Encontré algunas cosas de GJK, pero no eran cajas; en cambio, cosas más complejas y confusas.
Solo quiero poder hacer un OBB a partir de 3 vectores: centro, tamaño y rotación de cada eje. Entonces podrá probar colisiones con ellos. Gracias de antemano por cualquier cosa que publique.
fuente
Respuestas:
Vi el enlace en su comentario que mostraba el personaje con los OBB que estaban alineados alrededor de la malla. A veces eso se puede hacer con esferas de delimitación y luego no hay problemas de orientación y una prueba de esfera suele ser más rápida.
Su personaje, si muestra las estructuras delimitadoras como en su enlace, se parecería más al hombre de Michelin .
fuente
Aquí hay un ejemplo real de trabajo de un AABB, que es directamente de mi motor de juego:
Simplemente elimine los otros métodos de tipo Bounding.
fuente
Molly Rocket es tu amiga para siempre.
http://mollyrocket.com/849
Pero parece que está malinterpretando el uso general de un cuadro delimitador. Realmente no lo usas para un sistema de colisión física. Especialmente cuando puede ser terriblemente ineficiente para ese tipo de uso.
¿Quizás estás pensando en una consulta de colisión de Scene Graph? Donde verifica si un objeto está entrando en un QuadTree o un Octree, y rápidamente reconstruye su gráfico.
fuente