Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
2. ● ¿Cómo sé si estoy tumbado en el suelo?
¿Que pasa si mi proyectil quiere destruir al
blanco… y el blanco a mi proyectil?
...
Simulación física 2
Motivación
3. ● El concepto de colisión es de los aspectos
más importantes a conocer de Unreal
Engine, junto a sus posibles respuestas y las
configuraciones preestablecidas existentes
Simulación física 3
Motivación
4. ● Casi tan importante como la iluminación
realista es para el juego la física realista
● Gracias a PhysX (y ahora con Chaos)
aumenta la inmersión
○ Detección de colisiones con precisión, interacción
física entre varios objetos, destrucción...
Simulación física 4
Motivación
5. ● Colisiones y proyecciones
○ Formas y respuestas
● Interacciones comunes
● Configuraciones preestablecidas
● Simulación física
○ Restricciones
○ Materiales
○ Cuerpos
Simulación física 5
Puntos clave
6. Simulación física 6
Colisiones y proyecciones
https://docs.unrealengine.com/en-US/Engine/Physics/Collision/Overview/index.html
7. ● Toda malla estática, por defecto, tiene una
forma de colisión simple y otra compleja
○ Sin esto, no hay colisión posible; aunque Unreal
puede autogenerar una simple y usar la propia
malla estática como colisión compleja ideal
Simulación física 7
Formas de colisión
8. ● Todo actor que puede colisionar, tiene un
tipo de objeto y una serie de respuestas con
respecto a cada otro tipo de objeto:
○ Bloquear a ese otro objeto
○ Solaparse con ese otro objeto
○ Ignorarlo por completo
Simulación física 8
Respuestas a la colisión
COLLISION RESPONSES
9. ● La proyección de rayos es similar a la
colisión, pero cada proyección tiene su tipo
y cada objeto define cuál será su respuesta
○ Es la manera habitual
de predecir futuras
colisiones
Simulación física 9
Respuestas a la proyección
https://docs.unrealengine.com/en-US/Engine/Physics/Tracing/index.html
TRACE RESPONSES
11. ● Sólo hay colisión si se activan las colisiones
● Sólo hay bloqueo si los dos objetos se
bloquean entre sí
○ Para recibir eventos al trabajar con cuerpos físicos,
activa Simulation Generates Hit Events
● Sólo hay solapamiento si los dos objetos se
solapan entre sí
○ En vez de Simulation… es Generate Overlap Events
○ Aunque se puede, evita bloquear y solapar a la vez
● ¡Ojo con la cámara en Play in Editor!, que
al ser un Pawn podría colisionar :-)
Simulación física 11
Interacciones comunes
16. ● En la web encontramos estas interacciones
comunes, cómo crear formas de colisión y
configuraciones preestablecidas
Simulación física 16
Configuraciones preestablecidas
https://docs.unrealengine.com/en-US/Engine/Physics/Collision/HowTo/index.html
17. ● Todas las propiedades
que podemos elegir,
también para crear
configuraciones ad hoc
○ Indicando una a una
las posibles interacciones
con objetos de todo tipo
Simulación física 17
Configuraciones preestablecidas
https://docs.unrealengine.com/en-US/Engine/Physics/Collision/Reference/index.html
18. ● ¿Qué significa la expresión Generate
Overlap Events en la categoría de colisión?
A. Que el actor se solapa con otros actores
B. Que el actor puede solapar con otros actores
C. Que al solapar los dos actores reciben un evento
D. Que el motor llamará al evento Overlap del actor
Simulación física 18
Participación
19. ● Toda la física la simula Unreal, pero tú
puedes definir cuerpos físicos, establecer
restricciones a los movimientos, etc.
Simulación física 19
Simulación física
https://docs.unrealengine.com/en-US/Engine/Physics/Constraints/ConstraintsBlueprints/index.html
20. ● Si un actor es móvil y tiene colisión simple…
se puede activar Simulate Physics y se
comportará como cuerpo físico
○ Para simular
física en asuntos
más complejos,
como las mallas
esqueletales,
existe un editor
■ Physics Asset
Tool (PhAT)
Simulación física 20
Cuerpos físicos
https://docs.unrealengine.com/en-US/Engine/Physics/PhysicsAssetEditor/index.html
21. ● Los materiales por
dentro están codificados
en High-Level Shading
Language (HLSL)
Simulación física 21
Materiales físicos
https://docs.unrealengine.com/en-US/Engine/Physics/PhysicalMaterials/index.html
23. ● El componente Blueprint Spline sirve para
representar estas curvas definidas a trozos,
y tiene múltiples usos posibles (ej. animar)
● El componente Blueprint Spline Mesh es
mucho más concreto: sirve para deformar
una malla estática según un trozo de curva
spline entre
dos puntos
A y B
Simulación física 23
Curvas Spline
24. ● Las colisiones son el apartado más
tradicional que debe gestionar la física
● La proyección de rayos es la técnica más
habitual para conocer el entorno de juego
● Unreal incluye configuraciones
preestablecidas para estas colisiones
● Se puede crear objetos con
comportamiento físico (cuerpos físicos), o
bien simular el efecto en un material, y
aplicarles restricciones físicas al conjunto
Simulación física 24
Resumen