¡Motor! o ¿Qué es la física del juego?



Al crear un juego, los desarrolladores tienen que encontrar un equilibrio no solo en mecánica, sino también en física. ¿Realismo o arcade? En general, alguien así. Lo principal es fan y placer. Es necesario crear las leyes fundamentales de su mundo y explicar que la capacidad de caminar sobre el techo es mecánica, no un error.

Cuán complicada debe ser la física del juego, qué tipo de juegos hay y qué trucos utilizan los desarrolladores al implementarlos, traducidos en pocas palabras.

La física en los videojuegos a menudo se da por sentado. Si el personaje salta, está obligado a aterrizar y no volar al espacio (aunque con un juego bastante largo en Skyrim, esto todavía puede suceder). Esperamos que los objetos del juego se comporten como en la vida (no tenemos en cuenta los errores).

La física de programación puede reducirse a uno o dos métodos con un par de líneas de código. O tal vez un sistema complejo con un motor físico separado (por ejemplo, Havok o PhysX ) con millones de líneas de código. Independientemente de la complejidad, la física del juego se divide en dos categorías: física del estado sólido y física del cuerpo blando.



La física de estado sólido es necesaria en la mayoría de los juegos 2D y 3D. La física del cuerpo blando describe la acción de las fuerzas sobre un objeto que toma varias formas (por ejemplo, una bandera). Mostrar un cuerpo blando es mucho más difícil, por lo que este enfoque se usa con mucha menos frecuencia.

El importante papel de la física de los juegos.


La física del juego tiene diferentes propósitos, pero los más importantes son la intuición y la diversión. Si un objeto se comporta de manera impredecible, será difícil entender las reglas del juego.

Si la pelota en FIFA 20 rebotara cada vez en una dirección aleatoria, sería imposible marcar un gol. Los desarrolladores están tratando de recrear el rebote de la pelota dependiendo de su trayectoria, velocidad y otros factores en el mundo real. Para que el jugador entienda intuitivamente cómo manejar la pelota u otros objetos. Por cierto, FIFA 20 tiene muchas críticas negativas precisamente porque su física no funciona como los fanáticos esperaban.


Además, los juegos no están obligados a observar estrictamente las leyes naturales de la naturaleza. Lo principal es que el juego debe ser divertido, y la implementación de leyes físicas reales puede destruir toda la experiencia. Imagina Grand Theft Auto V con física terrestre severa (pero si realmente quieres, puedes poner un mod especial ). Incluso un accidente leve a alta velocidad terminaría fatalmente, mataría el ritmo y la atmósfera. No muy divertido


El desarrollador debe encontrar el equilibrio adecuado entre un juego divertido y un juego con física realista. Y a menudo depende del público objetivo. Un buen ejemplo es la carrera.

A muchas personas les gusta Arcade Racing (Need For Speed), en el que tocar la astilladora o un giro brusco afecta débilmente el control de la máquina. Otros prefieren simuladores de carreras realistas (Gran Turismo).

Pero incluso creando simuladores, los desarrolladores están tratando de atraer una nueva audiencia: Gran Turismo se basó en el fotorrealismo (y en cierta medida funcionó). Pero al final, Polyphony Digital agregó un modo arcade para capturar un mercado más grande.

Física del estado sólido


Hablando de física de juegos, generalmente nos referimos a física de cuerpo rígido (RBP). Describe y reproduce las leyes físicas aplicables a las masas sólidas de materia. El balón en FIFA 20 es un sólido que está controlado por la física del juego.

No importa si miramos títulos en 2D como Pong o títulos en 3D como Skyrim: la mayoría de los juegos tienen física lineal de estado sólido.



Física de juegos 2D


Toma a Pong como ejemplo. Dos sólidos (pelota y raqueta) chocan una y otra vez. Eso no suena muy alentador. El abuelo de los videojuegos no tenía una física realista.

Primero, los programadores ignoraron la gravedad, la fricción y la inercia. Solo había una pelota moviéndose de un lado a otro a una velocidad constante.
En segundo lugar, el ángulo de rebote de la pelota desde la raqueta no se calculó con precisión. La pelota ignora por completo la ley de reflexión: si no se tiene en cuenta la rotación y otros factores, el ángulo de incidencia de la pelota en la superficie es igual al ángulo de su rebote. En Pong, el ángulo de reflexión se determinó por lo cerca que estaba la pelota del centro de la raqueta en el momento del contacto. La trayectoria original no importaba. Los jugadores pueden cambiar completamente la inercia de la pelota, a pesar del vector de su movimiento.

La trayectoria de la pelota se ha tenido más en cuenta en versiones posteriores y en otros juegos similares. Por ejemplo, en Breakout. Pero incluso si no hay realismo, de lo contrario, un juego divertido se convierte en aburrido y difícil.



Los juegos con artillería fueron los primeros en tener en cuenta la gravedad y la resistencia en su mecánica. Los usuarios se turnaban para disparar balas de cañón, flechas y misiles para destruir la base del enemigo. Dichos juegos tuvieron en cuenta la balística semi-realista, es decir, el ángulo de lanzamiento, la gravedad, la resistencia al viento y la velocidad original. Pero nuevamente, los diseñadores no buscaron hacer todo como en el mundo real. Su público objetivo era gente común, no expertos en balística.

El comportamiento de los sólidos (principalmente los depósitos) dependía de varias fuerzas. De acuerdo con ellos, las animaciones cambiaron. Las flechas y los cohetes son un gran ejemplo de animación de sólidos en juegos similares. El plano del proyectil podría cambiar durante el vuelo, y la flecha se mantuvo recta. Dos puntos en un objeto en un sistema de sólidos siempre estarán a la misma distancia uno del otro.

Juegos como Donkey Kong y Mario Bros. Influyó fuertemente en la física de los proyectos 3D. Mario se hizo amigo de las leyes físicas básicas: gravedad, impulso e inercia. El salto se convirtió en la mecánica principal y permaneció en la industria del juego para siempre.



El objeto que rebota debe retroceder. La única pregunta es qué tan alto se elevará y qué tan rápido caerá. ¿Y cuán realista debería ser la gravedad en un juego?

Si Mario obedeciera las leyes reales de la física, nunca habría pasado el primer nivel. El equilibrio tuvo que ser cambiado por el juego divertido y las expectativas de los jugadores.

Otros juegos de la serie ampliaron estos límites: apareció un doble salto. En esta franquicia, se agregó por primera vez a Super Mario 64, pero anteriormente se había utilizado en Dragon Buster en 1984.

El doble salto comenzó a usarse activamente en plataformas (a veces incluso demasiado). Y todavía está allí en muchos proyectos modernos, incluido el 3D. Por ejemplo, Devil May Cry y Unreal Tournament.

Física 3D


La física en los juegos en 3D no es muy diferente de la física en los proyectos en 2D. Los cálculos se complican por la tercera dimensión (eje Z) y el hecho de que los objetos consisten en varios sólidos.

En la mayoría de los juegos 2D, los desarrolladores solo necesitan procesar datos de solo unas pocas colisiones de sólidos. Por ejemplo: Mario salta sobre Kupu. Mario puede tocar cualquier parte del Kupa. Dependiendo del punto de contacto, Coop se esconde en un caparazón o Mario pierde la vida. En cualquier caso, estamos hablando de un solo toque.



En los juegos 3D, varios objetos sólidos chocan simultáneamente. En Uncharted, cuando Drake sube una roca, el programa monitorea al menos sus brazos y piernas, sólidos individuales. Puede saltar y agarrar las escaleras con una mano o dos, y la animación será diferente.

En los juegos en 3D (y algunos en 2D), las extremidades de los personajes se dividen en varios sólidos que están conectados por uniones. Es decir, el modelo de la mano humana consiste en el antebrazo y la mano, que están conectados por la muñeca y están unidos al hombro por la articulación del codo. Esto es descrito por la física ragdoll (del inglés ragdoll - muñeca de trapo).


Imagen: Universidad de California , Riverside

Los compuestos de sólidos (juntas) se crean en el sistema de animación esquelética del motor del juego. Cada sólido debe moverse de acuerdo con ciertas reglas para parecer realista. Para calcular los movimientos, los programadores usan varias técnicas. El más famoso es el algoritmo de Featherstone , un enfoque restrictivo que evita que las extremidades cuelguen al azar.

Existen otros enfoques para trabajar con ragdoll: integración de Werle (Hitman: Codename 47), cinemática inversa (Halo: Combat Evolved y Half-Life), ragdoll mixto (Uncharted: Drakes Fortune y muchos otros) y animación de procedimientos (serie Medal of Honor )



Todas estas técnicas están destinadas a garantizar que el cuerpo no se debilite demasiado rápido y no caiga al suelo, como una muñeca de trapo. El movimiento de los sólidos incorporados en un modelo es limitado, por lo que se comportan de manera predecible.

Déjame recordarte que siempre necesitas encontrar un equilibrio entre realismo y diversión. Incluso si el juego engaña un poco.

Tome la serie Sniper Elite. En el mundo real, un tirador debe tener en cuenta una serie de variables: velocidad del viento, dirección del viento, alcance, movimiento del objetivo, espejismo, fuente de luz, temperatura, presión y el efecto Coriolis .

Si Rebellion creara un auténtico simulador de francotiradores teniendo en cuenta todas las variables, el juego se volvería muy difícil. Su ignorancia se debe no solo a las capacidades de los procesadores modernos. El usuario promedio no solo no quiere calcular todos estos factores durante el juego, sino que ni siquiera quiere saber sobre ellos. Es más rentable dejar que el jugador use el visor y mostrar el vuelo de la bala en cámara lenta.


Call of Duty: Modern Warfare tiene un nivel en el que debes alcanzar un objetivo desde una gran distancia. El jugador debe tener en cuenta el efecto Coriolis, así como la velocidad y dirección del viento. A algunas personas les gusta este desafío, pero lo abandoné.

Las carreras son otro género que requiere muchos cálculos sobre los sólidos y las fuerzas que actúan sobre ellos. Las ruedas están en contacto con la superficie de la carretera, la suspensión está en contacto con las ruedas, los autos chocan entre sí. Todavía otros objetos participan directa o indirectamente en colisiones.

Las fuerzas físicas que actúan sobre los automóviles al girar generalmente se simplifican. Derivarse en ellos es simple, pero al mismo tiempo bastante complicado: los jugadores deben sentir satisfacción.

Los simuladores Gran Turismo y Assetto Corsa tienen fuerzas más realistas. Por ejemplo, Assetto Corsa Competizione (versión 1.0.7)utiliza un modelo de neumático de cinco puntos. Incluye dos puntos en el borde delantero del neumático, dos en la parte trasera y uno en el medio, todos juntos actúan como un sólido combinado. Los puntos pueden moverse y doblarse en tres dimensiones, respondiendo independientemente a las fuerzas externas y al contacto con la superficie. Los puntos adicionales aumentan significativamente el número de cálculos que realiza el motor.


Los modelos físicos en títulos 3D son mucho más complejos que en 2D. Tienes que hacer un seguimiento de más variables y puntos en común. Pero la mayoría de los cálculos son lineales, por lo que estos modelos son mucho más simples que los modelos de cuerpo blando.

Física del cuerpo blando


La física del cuerpo blando (SBP) describe objetos deformables. Se usa con menos frecuencia y se reduce considerablemente en los videojuegos debido a la gran cantidad de computación.

Los cuerpos blandos son la ropa, el cabello y las acumulaciones de partículas como el humo o la niebla. Los puntos de un sólido siempre permanecen a la misma distancia entre sí. Un cuerpo blando puede deformarse y moverse para que cambie la distancia entre sus puntos.

Sólidos deformables


El movimiento suave del cuerpo puede ser limitado. Todos los puntos de la bandera siempre permanecerán en la bandera, no se pueden separar. El rango de desviación de los puntos entre sí depende de la distancia entre ellos en la bandera suavizada.

Los puntos adyacentes siempre permanecen adyacentes. Los puntos remotos pueden acercarse, pero al mismo tiempo no pueden moverse más lejos el uno del otro más allá de la distancia a la que están fijados en la bandera expandida.



El número de cálculos para el cuerpo blando excede las capacidades de la CPU y la GPU. Por lo tanto, los desarrolladores simplifican y engañan. Por ejemplo, se utiliza la animación en bucle. Pero esa imagen parecerá antinatural después de un tiempo. Es mejor no recurrir a un truco de vida si el objeto está en el centro de atención.

La ropa tiene casi las mismas propiedades de cuerpo blando que la bandera, pero su física es aún más compleja. En primer lugar, porque el jugador definitivamente le prestará atención. En segundo lugar, porque a menudo es más dinámico: el jugador ejerce su propia influencia sobre él. Un gran ejemplo es el manto de Batman en la serie Arkham.


Los diseñadores no pueden usar animación en bucle en una capa, porque su movimiento depende de las acciones del jugador. Si el jugador dirige al personaje hacia la izquierda, la capa debe moverse hacia la derecha para mostrar de manera realista la inercia y la resistencia del aire.

Aquí es donde entran en juego los motores físicos. En Batman: Arkham Knight, Rocksteady usó APEX Cloth PhysX. Esta herramienta le permite crear una máscara para los cuerpos que muestran ropa y ajustar los parámetros de su movimiento. Dependiendo de la configuración, se puede mostrar todo, desde seda hasta arpillera.

Para mejorar el rendimiento, puede limitar los efectos de las fuerzas naturales en la tela. Por ejemplo, el Método del viento se puede establecer en Preciso o Legado. La visualización parcial ignora pequeñas fluctuaciones, se realizan menos cálculos.

No es necesario tener en cuenta todos los puntos del tejido: pueden actuar en grupos. Esto reduce la cantidad de vértices que deben procesarse. Sin embargo, no todos estos grupos interactúan entre sí como en un cuerpo blando real. Afectan principalmente solo a los puntos más cercanos, por lo que el número de cálculos matemáticos se reduce a un nivel aceptable.

Sistemas de partículas de cuerpo blando


Mostrar humo o nubes es aún más difícil. Los puntos de dichos objetos pueden moverse de forma no lineal entre sí. Algunos puntos pueden moverse más allá de los límites figurativos del objeto e incluso formar otros cuerpos blandos.

Los motores físicos han mejorado significativamente los sistemas de partículas en los últimos años. Mire la pantalla de bienvenida de Skyrim y cuán realista se ve el humo allí.


Cada partícula en el sistema de cuerpo blando tiene una vida útil estática. Este es el período desde el momento de su aparición hasta el momento de su desaparición (después de un tiempo, la fuente de partículas lo creará nuevamente). Durante este período, el punto se mueve con los parámetros dados.

Considere el humo de una fogata como ejemplo. Cada partícula se mueve hacia arriba desde la fuente: de forma no lineal, girando y cambiando aleatoriamente su posición en el espacio. Entonces se elevan hasta que termina su vida útil, y luego se eliminan.

La esperanza de vida afecta cuán naturalmente se ve un sistema de partículas. Con una larga duración, puede crear humo bastante realista a partir de un incendio, pero esto cargará en gran medida el procesador. Corto: reduce el número de cálculos, pero las partículas solo tendrán tiempo de elevarse ligeramente antes de desaparecer.

El humo en el protector de pantalla Skyrim se ve genial, simplemente porque nada más sucede en la pantalla. Toda la potencia del procesador y la tarjeta de video se puede dirigir para simular partículas de humo con una vida útil muy larga.



En el juego en sí, el humo del fuego ya no parece tan realista. Todavía es bastante convincente, pero más simple: los desarrolladores han reducido el tiempo que lleva mostrar partículas en una simulación. Hay otros trucos. Por ejemplo, superponer múltiples capas de humo estático

La física del cuerpo blando se agrega con mucho cuidado a los juegos. En primer lugar, no hay necesidad de una simulación completa de la física del cuerpo blando; por regla general, solo se necesita para la estética. En segundo lugar, la reproducción exacta del sistema de cuerpo blando requiere demasiados cálculos.

Para resumir


La física de los videojuegos es un campo complejo en el que los desarrolladores buscan un equilibrio entre el realismo y las limitaciones de la potencia informática. Los trucos, las simplificaciones y los motores físicos te permiten crear rápidamente una física bastante realista para enfocarte en los aspectos más importantes del juego.



El juego debería ser interesante. El realismo no es tan importante en comparación con el juego adictivo. La física del juego sigue siendo importante: necesitas reglas intuitivas. Al mismo tiempo, se pueden cambiar para enriquecer el juego (recuerde el doble salto).

Si desea comprender mejor la física de los videojuegos, consulte las secciones relevantes en la Guía de Unity o la Guía de Lumberyard .

All Articles