
Qué es un motor gráfico
Un motor gráfico o game engine es una biblioteca software compuesta por diversas funcionalidades o tecnologías que marcan el entorno 3D, físicas y mecánicas de un videojuego. Dependiendo de diversas funcionalidades, nos vamos a encontrar una calidad gráfica distinta, unas mecánicas determinadas o unas físicas muy específicas.
Crear un motor gráfico desde cero es un trabajo enorme, debiendo escribir mucho código. Antiguamente, se pensó de esta manera, pero finalmente decidieron crear motores gráficos para una serie de videojuegos. De esta manera, se simplificaba el trabajo a los desarrolladores y se otorgaba una calidad gráfica esperada al usuario o jugador.
Algunos prefieren definir el motor gráfico como una recopilación de bibliotecas que realizan las diversas tareas principales:
- Renderizar objetos 3D.
- Importar activos (conocidos como assets) en diversos formatos de sonido, imagen o vídeo.
- Ejecutar bucle de juego.
- Memoria del progreso del juego, sistema de autoguardado, etc.
- Sistema de coordenadas y monitorización.
- Inputs o entradas para mandos, teclado/ratón, volantes, etc.
- Colisiones
- Calendario de eventos.
- Etc.
Dependiendo del motor gráfico, veremos implementaciones específicas como las siguientes:
- Creador y programador de escenas.
- Funciones IA para generación de escenas.
- Motor de visualización para cinemáticas.
- Etc.
Las opciones son infinitas, de verdad, y con el auge de la IA generativa es de esperar que veamos videojuegos capaces de generar contenidos al estilo “Minecraft”, es decir, conforme andamos.
A menudo, los gamers más preocupados por el motor gráfico revisan cuál lleva el videojuego que quieren comprarse. Esto les da una especie de “garantía” para saber qué expectativas gráficas pueden tener respecto al juego.
Debo decir que los motores gráficos hacen muchas más cosas que demostrar una calidad gráfica determinada, sino que traen muchas optimizaciones, tecnologías de reescalado, etc.
Dicho esto, podemos ver ejemplos en los que los desarrolladores de videojuegos usan conjuntamente 2 motores gráficos conjuntamente, como es el caso de Unity + Unreal Engine o Unreal Engine + CryEngine, por ejemplo.
Motores gráficos más usados
Puedes buscarlos por Google como “los mejores motores gráficos” o “los más populares”, pero yo prefiero ir a los más usados. ¿De qué sirve enseñaros los mejores si no se implementan? Seamos prácticos.
Unity
Unity ofrece varias versiones, siendo los más importantes Unity 5 y el presente Unity “a secas” que cubren muchísimos videojuegos. Es un motor gráfico muy usado en aventuras que no son súper realistas, sino que son más animadas, 2D o que no tienen un trabajo en físicas espectacular. Se ha convertido en el motor gráfico más usado de los últimos años, según el estudio de SlashData.
Es compatible con Windows, dispositivos móviles y las últimas consolas, así como con otras plataformas de realidad virtual o extendida. Es muy respetado entre la comunidad, pero hay que decir que no ofrece experiencias totalmente realistas.
Unreal
Se trata del segundo motor gráfico más usado, pero considerado como el más versátil en términos. Lo primero es decir que Unreal Engine tiene varias versiones (desde la 1 hasta la 5), y lleva desde finales de los 90 entre nosotros.
El grueso de videojuegos lo compone Unreal Engine 4, que lleva desde 2005 en el mercado. Destacó por su implementación de realidad virtual, una simulación física y detección de impactos muy interesante, su sistema de nodos y un renderizado en tiempo real realmente bueno.
Unreal Engine 5 será el motor de referencia a partir de este 2024, relevando a su anterior versión en el desarrollo de juegos en Xbox Series, PlayStation 5 y Windows. No obstante, hay excepciones como Fortnite, que también está desarrollado para consolas anteriores, Nintendo Switch y dispositivos móviles.
Godot
Puede que no te guste o que no te entusiasmen las aventuras gráficas proporcionadas por este motor gráfico, pero lo cierto es que hay muchísimos videojuegos y minijuegos creados a partir de Godot.
Ha tenido un ascenso gigantesco de uso en los últimos años, especialmente en la creación de videojuegos 2D.
Source
Para mí, Source es uno de los mejores motores gráficos de la historia que revolucionó el mundo de las físicas notablemente. El mítico Counter Strike: Source junto con los Half-Life 2 fueron los que encabezaron este game engine tan popular.
El problema es que es ciertamente antiguo y se ha quedado un poco desfasado en términos de calidad gráfica, pero no ha sido un obstáculo para colocar best-sellers en el mercado. Eso sí, solo es compatible para Windows y Mac.
CryEngine
Las cosas se ponen muy serias en lo que a calidad gráfica se refiere, y CryEngine se postula en la 5ª plaza. Se trata de un motor que cogió cierta fama por el videojuego Far Cry, pero que obtuvo toda la atención con CryEngine 2 y la saga Crysis.
Actualmente, CryEngine V es el más reciente, pero debo decir que se usó más este motor gráfico fueron en la versión CryEngine 3.
Ha bajado mucho su uso, pero cuenta con unas especificaciones TOP, entre las que podemos destacar el Ray Tracing.
REDengine
REDengine es el motor gráfico de CD Projekt Red por excelencia, que históricamente ha dado vida a videojuegos como The Witch, Cyberpunk 2077. Quisieron crear un motor gráfico para RPG que reemplazara a Aurora, y ciertamente lo consiguieron.
No es el motor gráfico que más impacte visualmente, pero sí el que más tecnologías integra en los últimos años. Obviamente, no se usó la misma versión para The Witcher 2 que para Cyberpunk 2077, ocurriendo lo mismo que en los anteriores.
Havok, mención honorífica
Más que un motor gráfico puro y duro, se trata de un motor enfocado a las físicas de los videojuegos. Esto significa que se usa conjuntamente con otro para proporcionar una experiencia lo más realista posible.
A lo largo de la historia, Havok ha estado presente en juegos realmente buenos como Demon’s Souls, Assassin’s Creed, Just Cause, The Lasto f Us, Heavy Rain, Half-Life 2, Fallout 3, Medal of Honor, Super Smash Bros. Brawl, Uncharted, etc.
¿Existen motores gráficos enfocados a marcas de GPU determinadas?
No, pero la optimización del videojuego en cuestión sí que puede estar condicionada al uso de GPU AMD o NVIDIA. Por no hablar de que el juego traiga soporte a DLSS o FSR de forma discriminada.