desarrollo de juegos de video en 3d uniéndolo todo fabián coello c. marzo 2006

23
Desarrollo de Desarrollo de Juegos de Video en Juegos de Video en 3D 3D Uniéndolo Todo Uniéndolo Todo Fabián Coello C. Marzo 2006

Upload: pepe-saiz

Post on 03-Jan-2015

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

Desarrollo de Juegos de Desarrollo de Juegos de Video en 3DVideo en 3D

Uniéndolo TodoUniéndolo Todo

Fabián Coello C.Marzo 2006

Page 2: Desarrollo de Juegos de Video en 3D Unié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

Page 3: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 4: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 5: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 6: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

Detección de ColisionesDetección de Colisiones

ParalelepípedoParalelepípedo• Cálculo contra 6 planosCálculo contra 6 planos

Page 7: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

Detección de ColisionesDetección de Colisiones

EsferaEsfera• Sólido más fácil de calcularSólido más fácil de calcular

Page 8: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 9: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 10: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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 ?

Page 11: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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 )

Page 12: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 13: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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.

Page 14: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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 )

Page 15: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 16: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 17: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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 )

Page 18: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

Demo Demo

Page 19: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 20: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 21: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 22: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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

Page 23: Desarrollo de Juegos de Video en 3D Uniéndolo Todo Fabián Coello C. Marzo 2006

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