Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





AABB

Iniciado por samsaga2, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

samsaga2

                                Estaba buscando información sobre aligned bounding box y encuentro cosillas sobre colision pero no sobre como construir los bounding box estos. ¿Sabeis alguna web que hable del tema?                                

NeLo

                                Mira a ver si Real-time rendering te puede ayudar en tu aventura con las Axis Aligned Bounding Box :ojo:
                               
Drowning deep in my sea of loathing

Cronodragón

                                Disculpen, qué es "aligned bounding box"??                                

NeLo

                                No hay nada que disculpar :ojo:

Axis Aligned Bounding Box es un sistema de detección de colisiones que consiste en crear una caja alrededor del modelo (esta caja no se ve, logicamente :lengua:) alineada con los ejes espaciales. De esta forma es muy rápido y fácil detectar colisiones entre AABB.

Tambien hay que decir que es bastante impreciso segun para que objetos, para un coche de un juego de carreras no esta mal, pero para un helicoptero en un juego de acción aérea, pues como primer sistema de detección vale, pero habria que afinar más después, ya que las aspas harian el BB muy ancho, y un cohete que pasara  por debajo de las asmas, colisionaria sin embargo con la caja.

¿Se entiende o hago un croquis? xD
                               
Drowning deep in my sea of loathing

Cronodragón

                                Entendido! :ojo:

hmmm, entonce habría que hacer una caja para las aspas, otra para el eje, y otra para la cabina, no te parece?

- Marco
                               

sés

                                :agh: Juer, pos vaya nombre tan tésnico pa lo que se lleva hasiendo toa la vía en 2D, ¿no?

:lengua: Cajas de colisión, en español.                                
Soy indeciso... ¿o no?

NeLo

                                Sip, una solución común es crear varios bounding boxes para un obejto, si este tiene una geometría... ¿irregular?

Si le pones 3 BB al helicoptero, los cálculos se multiplican por 3 tambien.

Voy a comentar tambien que existen las bounding sphere y ellipse, que segun para que modelos, se pueden adaptar mejor que las cajas.
                               
Drowning deep in my sea of loathing

NeLo

                                Pues ya ves sés, el dominio del inglés en este mundillo.

Yo personalmente las llamo asi, porque cuando las conocí estaba leyendo en inglés y las llamaban asi xD

De todas formas me gusta mas Axis Aligned Bunding Box que Cajas de colisión Alineadas con los Ejes xD
                               
Drowning deep in my sea of loathing

seryu

                                Son bloqes de colision respecto a los ejes, en castellano xD                                

samsaga2

                                La web es genial, justo lo que yo queria. el OBB da mejor resultado que el AABB, quiero implementar las dos ademas del sphere bounding box.                                

NeLo

                               
Citar
sphere bounding box.

Suena un poco contradictorio, no? xDDD
Se le suele llamar bounding sphere :lengua:

El bounding sphere como primer test de colisión es el que más me gusta, rápido y sencillo :ojo:
                               
Drowning deep in my sea of loathing

Cronodragón

                                Y que pasa si quiero detectar diferentes zonas, por ejemplo en un juego de espionaje donde el personaje puede ser herido en la cabeza, los brazos, las piernas, etc??

- Marco
                               

NeLo

                                Ahi yo veo dos formas de hacerlo. Con diferentes Bounding X (spheres, box o lo que sea), cada una equivalente a una zona del cuerpo.

La otra forma seria que a la hora de exportar el modelo desde el programa gráfico (3dsmax por ejemplo) se guarde información sobre las zonas del modelo, mediante el nombre del objeto o los comentarios que deja añadir MAX, por ejemplo.

O también añadir un identificador a los poligonos, a la hora de exportar. Por ejemplo, creamos una caja, la cual llamaremos BOX_ARM, pues cuando exportemos, a todos los triangulos que esten dentro de esa caja, les asignaremos el ID 0, que corresponde a ARM.

Esto es lo que se me pasa por la cabeza en esta tarde de domingo xD
                               
Drowning deep in my sea of loathing

samsaga2

                                Bueno, me equivoqué por escribirlo rápido pero tampoco me alejo de lo que quiero hacer. Primero testear las colisiones con un bounding sphere y si colisionan testar de nuevo con un OBB.
                               






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.