1. Juegos
´ ´
¿Que hay detras de la pantalla?
Marcelo Arroyo
´
Dpto. de Computacion - FCEFQyN - Universidad Nacional de R´o Cuarto
ı
Mayo de 2011
Marcelo Arroyo Juegos 1/21
3. Juegos: Caracter´sticas
ı
´
¿Que tipo de programas son?
• Son programas de Simulacion
´
• Con restricciones de tiempo real
Marcelo Arroyo Juegos 3/21
4. Juegos: Caracter´sticas
ı
´
¿Que tipo de programas son?
• Son programas de Simulacion
´
• Con restricciones de tiempo real
Requerimientos actuales
• > 30 frames por segundo, sonido, . . .
• 3 Dimensiones (3D)
• Escenarios con
´
• Multiples vistas (camaras)
´
´
• Iluminacion, perspectiva, . . .
• Materiales y texturas avanzadas
• Realidad virtual (modelo f´sico preciso)
ı
• Cuerpos solidos y blandos (deformables)
´
Marcelo Arroyo Juegos 3/21
5. Juegos: F´sica
ı
Part´culas
ı
1 ´
Posicion:
y
x
z x p= y
z
2 Velocidad:
∆p dp
v = l´
ım = =p
∆t→0 ∆t dt
3 ´
Aceleracion:
∆v dv
a = l´
ım = =v =p
∆t→0 ∆t dt
Marcelo Arroyo Juegos 4/21
6. Juegos: F´sica
ı
´
Integracion
´
Dada una aceleracion, necesitamos calcular su velocidad y
´
posicion
T
v= a dt
t=0
T
p= v dt
t=0
T T
p= a dt
t=0 t=0
´
Con aceleracion constante:
1
v(t) = v(0) + at p(t) = p(0) + p(0)t + a t2
2
Marcelo Arroyo Juegos 5/21
7. Juegos: F´sica
ı
Leyes de Newton
1 Un objeto se mueve a velocidad constante excepto que se
´
aplique una fuerza sobre el.
´
Friccion (drag) = coeficiente o damping (≈ 1)
2 ´
Una fuerza aplicada a un objeto produce una aceleracion
proporcional a su masa
f
f = ma a=
m
3 La fuerza de gravedad (g ≈ 10m/s2 ):
0
f = mg a=g gravedad = -g
0
Marcelo Arroyo Juegos 6/21
8. Juegos: Cuerpos r´gidos
ı
F´sica de cuerpos r´gidos
ı ı
• Centro de masa (o gravedad): m n mi pi
1
i=0
• Rotacion (eje,angulo): Matrices de rotacion (3x3) o
´ ´ ´
cuaterniones
Marcelo Arroyo Juegos 7/21
9. Juegos: Cuerpos r´gidos (cont.)
ı
F´sica de cuerpos r´gidos (cont.)
ı ı
• Velocidad angular: velocidad y direccion de la rotacion
´ ´
• Cuaterniones: Orientacion de un cuerpo
´
cos π
2
x sin π
2
y sin π
2
z sin π2
• Velocidad y posicion de un cuerpo: Dependen de la
´
velocidad lineal y angular
• Computar v y p requiere:
´
1 Multiplicacion de matrices (3x3 y 3x4)
2 Inversas y transpuestas
3 Transformaciones: Cuaternion ⇐⇒ matriz (3x3)
´
Marcelo Arroyo Juegos 8/21
10. Juegos: Cuerpos r´gidos (cont.)
ı
F´sica de cuerpos r´gidos (cont.)
ı ı
• Aplicacion de fuerzas: Newton 2 con rotacion
´ ´
´ −1
1 Aceleracion: a = m f
2 Rotacion: Θ = I −1 τ
´
3 Torque: fuerza aplicada en un punto relativo al origen
τ = pf × f
4 Momento de inercia: Dificultad para rotar
n
Ia = mi × d2i →a
p
i=0
Marcelo Arroyo Juegos 9/21
12. Juegos: Colisiones
Detectar choques entre objetos
´
Reaccion ante choques
Marcelo Arroyo Juegos 10/21
13. ´
Juegos: Deteccion de colisiones
´
Dificultad de implementacion en tiempo real
• Volumenes delimitados (cajas,
´
esferas, cilindros, . . . )
• Particionado del conjunto de
objetos para evitar
comparaciones todos con todos
(O(n2 ))
• Grillas
• Particionado binario del
espacio
• Quad-trees, Oct-trees
• Detectores: Dos etapas
´
1 Seleccion de candidatos
´
2 Deteccion de proximidad y
´
generacion de contactos
Marcelo Arroyo Juegos 11/21
14. Juegos: Ejemplo en 2D
Uso de Axis Aligned Bouding Boxes
Marcelo Arroyo Juegos 12/21
15. Juegos: Colisiones (ej. de falla)
´ ´
Falla en deteccion de colision
Marcelo Arroyo Juegos 13/21
16. Juegos: Colisiones (ej. de falla)
´
Falla en respuesta a colision
Marcelo Arroyo Juegos 14/21