desarrollo de juegos de video en 3d uniéndolo todo fabián coello c. marzo 2006
TRANSCRIPT
Desarrollo de Juegos de Desarrollo de Juegos de Video en 3DVideo en 3D
Uniéndolo TodoUniéndolo Todo
Fabián Coello C.Marzo 2006
TemarioTemario
Detección de ColisionesDetección de Colisiones Respuesta a las ColisionesRespuesta a las Colisiones Física de Objetos.Física de Objetos. Corre por tu vida.Corre por tu vida. Cámara por MouseCámara por Mouse Técnicas AvanzadasTécnicas Avanzadas
Detección de ColisionesDetección de Colisiones
Permitir a los objetos reaccionar unos Permitir a los objetos reaccionar unos a otros e interactuar con el mundo.a otros e interactuar con el mundo.
Cada aplicación lo maneja Cada aplicación lo maneja diferentemente (realidad vs diferentemente (realidad vs desempeño)desempeño)
Proceso dividido en dos fases:Proceso dividido en dos fases:• Detección de ColisionesDetección de Colisiones• Respuesta a ColisionesRespuesta a Colisiones
Detección de ColisionesDetección de Colisiones
Buscar el punto y momento en el Buscar el punto y momento en el cual los objetos intersecan con el cual los objetos intersecan con el ambiento y contra otros.ambiento y contra otros.
t0 tn
Detección de ColisionesDetección de Colisiones
Por eficiencia la detección se realiza Por eficiencia la detección se realiza frente al sólido contenedor.frente al sólido contenedor.
Depende del tipo de objeto para Depende del tipo de objeto para seleccionar el tipo de sólido seleccionar el tipo de sólido contenedor.contenedor.• ParalelepípedoParalelepípedo• EsferaEsfera• Cápsula o ElipsoideCápsula o Elipsoide• CilindroCilindro
Detección de ColisionesDetección de Colisiones
ParalelepípedoParalelepípedo• Cálculo contra 6 planosCálculo contra 6 planos
Detección de ColisionesDetección de Colisiones
EsferaEsfera• Sólido más fácil de calcularSólido más fácil de calcular
Detección de ColisionesDetección de Colisiones
Cápsula o ElipsoideCápsula o Elipsoide• Fácil de Calcular y eficienteFácil de Calcular y eficiente
Detección de ColisionesDetección de Colisiones
CilindroCilindro• Fácil de Calcular, se acomoda a objetos Fácil de Calcular, se acomoda a objetos
largoslargos
Detección de ColisionesDetección de Colisiones
Calcular la colisión e interpolarla en Calcular la colisión e interpolarla en el tiempo. ( Tomar en cuenta el tiempo. ( Tomar en cuenta propiedades físicas como aceleración propiedades físicas como aceleración y velocidad )y velocidad )
Cuadro 0 Cuadro 1Cuadro ?
Respuesta a ColisiónRespuesta a Colisión
Que hacer frente a una colisión?Que hacer frente a una colisión? Simular como reaccionan los objetos Simular como reaccionan los objetos
frente al mundo frente al mundo Dependiente de la situación y Dependiente de la situación y
colisióncolisión• Plano de Desplazamiento.Plano de Desplazamiento.• Choques físicos ( rebotes, reacciones, Choques físicos ( rebotes, reacciones,
etc).etc).• Reacciones ( Daño, Explosión, etc )Reacciones ( Daño, Explosión, etc )
Respuesta a ColisiónRespuesta a Colisión
Plano de DesplazamientoPlano de Desplazamiento• Seguir el movimiento frente al plano que Seguir el movimiento frente al plano que
se choca. Ejm FPSse choca. Ejm FPS
Respuesta a ColisiónRespuesta a Colisión
Choques Físicos.Choques Físicos.• Dar realismo físico y reacción.Dar realismo físico y reacción.
Respuesta a ColisiónRespuesta a Colisión
ReaccionesReacciones• Deformar o dañar frente a colisión Deformar o dañar frente a colisión
( Autos).( Autos).• Bajar vida de Jugador ( Balas ) Bajar vida de Jugador ( Balas ) • Explosiones ( Efectos especiales )Explosiones ( Efectos especiales )
Física de ObjetosFísica de Objetos
Relacionada directamente con la Relacionada directamente con la colisión y respuestacolisión y respuesta
Principal uso: Leyes Newtonianas de Principal uso: Leyes Newtonianas de la Físicala Física• GravedadGravedad• VelocidadVelocidad• AceleraciónAceleración
Corre por tu vidaCorre por tu vida
Aplicación demostrativaAplicación demostrativa• Inclusión de un Mundo Inclusión de un Mundo • Animación de ObjetosAnimación de Objetos• IluminaciónIluminación• Manejo de CámaraManejo de Cámara• Detección de ColisionesDetección de Colisiones
Manejo de Cámara por MouseManejo de Cámara por Mouse
Tomar desplazamiento (posición) Tomar desplazamiento (posición) desde el centro de la Forma.desde el centro de la Forma.
Rotar ese desplazamiento en cada Rotar ese desplazamiento en cada uno de los ejes ( x yaw, y )uno de los ejes ( x yaw, y )
Demo Demo
Técnicas AvanzadasTécnicas Avanzadas
Manejo Espacial (Organización Manejo Espacial (Organización Espacial)Espacial)• Solo renderizar lo que es visibleSolo renderizar lo que es visible• Realizar colisiones y físicas mas Realizar colisiones y físicas mas
rápidamenterápidamente• Indexado espacialIndexado espacial• Indispensable en niveles con gran Indispensable en niveles con gran
cantidad de triángulos cantidad de triángulos
Técnicas AvanzadasTécnicas Avanzadas
Quadtrees/ Octrees Quadtrees/ Octrees • Dividir la escena en cuatro partes (2d) u Dividir la escena en cuatro partes (2d) u
ocho partes (3d) iguales y organizar en ocho partes (3d) iguales y organizar en un árbolun árbol
• Método RecursivoMétodo Recursivo• Escenas uniformesEscenas uniformes
Técnicas AvanzadasTécnicas Avanzadas
BSP ( Espacios particionados binarios) BSP ( Espacios particionados binarios) • Dividir la escena en 2 partes, por medio Dividir la escena en 2 partes, por medio
de un plano de un plano • Método RecursivoMétodo Recursivo• InterioresInteriores
Técnicas AvanzadasTécnicas Avanzadas
Portales Portales • Dividir la escena en partes seleccionadas Dividir la escena en partes seleccionadas
interconectadas por portalesinterconectadas por portales• Método ManualMétodo Manual
RecursosRecursos
[email protected]@gmail.com www.geocities.com/fabian.coello/Archivoswww.geocities.com/fabian.coello/Archivos www.microsoft.comwww.microsoft.com//directxdirectx msdn.microsoft.com/directxmsdn.microsoft.com/directx