Los mejores motores gráficos de videojuegos (I): soluciones de código abierto

5 min lectura
Desarrollo / 16 diciembre 2015
Los mejores motores gráficos de videojuegos (I): soluciones de código abierto
Los mejores motores gráficos de videojuegos (I): soluciones de código abierto

BBVA API Market

No es posible desarrollar un videojuego sin un motor gráfico. Es por tanto una elección que cualquier programador de videojuegos ha tenido que hacer cada vez que se haya planteado un proyecto así. Dentro del mercado existen varias opciones, algunas más potentes y otras más flexibles. La elección depende en gran medida del tipo de desarrollo y también de las necesidades de los profesionales que se vayan a encargar de su conceptualización y diseño.

Dentro de todas estas opciones, hay varias que son totalmente gratuitas, con un gran rendimiento para desarrolladores independientes que quieren hacerse un hueco dentro de este sector. Básicamente son tres: Unity, Cryengine y Unreal Development Kit (UDK). Además, existen otras alternativas no gratuitas: Unreal Engine, MT Framework, Samaritan, Titanium, Rockstar Advanced Game Engine (RAGE), Frostbite, Havok, Anvil Engine y 4A Engine.

Soluciones gratuitas: características y ventajas

1. Unity

Unity es un motor gráfico gratuito, flexible, con una gran gama de recursos. Es una opción muy interesante para los desarrolladores jóvenes porque permite hacer buenos desarrollos sin coste, es sencillo de aprender y de usar y, además, al ser multiplataforma, cualquier proyecto se puede exportar a sistemas operativos móviles como Android, iOS o Windows Phone sin problemas. Dispone de todo lo necesario para diseñar proyectos en 2D y 3D.

Algunas características añadidas:

– Para móviles, consolas, navegadores y realidad virtual: cualquier desarrollo se puede desplegar sin esfuerzo en una gran variedad de plataformas, no sólo sistemas operativos móviles como iOS, Android, Windows Phone o Tizen (basado en Linux), también en sistemas operativos de escritorio como Windows, Mac OS X o Linux; consolas como PS Vita, PS3, PS4, Xbox360, Xbox One o Wii U; todo tipo de navegadores o soluciones de realidad virtual tan conocidas en la actualidad como Oculus Rift, MS Hololens, Gear VR o Play Station VR.

– Motor de videojuegos perfecto para desarrollos móviles. En este sentido, el motor gráfico Unity ofrece cualidades interesantes:

– Servicios de monetización.
– Occlusion culling
: es una técnica que determina qué parte de la escena gráfica no debe cargarse porque está oculta detrás de otra en el primer plano. Esto mejora los tiempos de renderizado en tiempo real.
– Asset bundling: son archivos que el desarrollador puede exportar comprimidos desde Unity, con elementos como texturas, modelos, clips de audio, o incluso escenas gráficas enteras cargadas por separado.

– Desarrollos para escritorio. Unity dispone de una solución que permite el desarrollo de videojuegos inmersivos y con una gráfica impactante: Realtime Global Illumination de Enlighten. Esta es una herramienta que provee a la escena de lightmaps, lightprobes y cubemaps en tiempo real y puede cambiar de forma dinámica elementos tan importantes como las fuentes de luz, la iluminación de escenarios y las propiedades de los materiales con respecto a la luz.

– Realidad virtual. Unity ofrece características específicas para la RV como el control de los movimientos de las cabeza; campos de visión adecuados y su traducción estereoscópica automática aplicada a la cámara; mapas de sombras; renderizado multihilo; GPU skinning; y draw call batching. Facilita todo lo necesario para los desarrolladores.

2. Cryengine

Cryengine es uno de los motores gráficos más usados para el desarrollo de videojuegos para consolas, PC y dispositivos móviles, ya sea PlayStation 4, Xbox One, Wii U, sistemas operativos Windows, Mac OS X, Linux, iOS o Android. Cryengine aporta una gran gráfica, basado en una óptima solución de renderizado en tiempo real y una tecnología en 3D muy eficiente.

Algunas características destacadas de este motor gráfico:

– Aspectos visuales. La mayoría de motores gráficos en tiempo real basa los elementos visuales en la tecnología tradicional de sombreado, en Cryengine optan por un modelo llamado Physically Based Shading (Sombreado basado en la física – PBS), que hace una interacción entre los objetos y la luz que imita casi a la perfección el comportamiento de la física del mundo real. Esta solución exige menos parámetros, lo que agiliza todo el proceso de conceptualización y creación de contenido. Esta solución facilita el movimiento en tiempo real de la vegetación, el flujo de los líquidos, los reflejos en el agua o el sonido.

Para conseguir todo esto, Cryengine dispone de varios proceso a través de las cuales los desarrolladores pueden perfeccionar los objetos:

– Teselación. Cryengine dispone del hardware de teselación acelerada DX11, que facilita varios métodos de triangulación para mejorar el diseño de mallas y dotar a los personajes de un mayor realismo, incluyendo animación. Son los modelos Phong, – Triángulos PN y mapas de desplazamiento, todos editables en tiempo real en busca del equilibrio entre gráfica y rendimiento.

– Pixel Accurate Displacement Mapping (PADM). Un nuevo método de mapeo de desplazamiento diseñado específicamente para Crysis 3. Este sistema, frente al de teselación, permite una mayor definición con un número inferior de triángulos.

– Herramientas de Cryengine. Una de las más atractivas es Statoscope, una solución de medición de rendimiento en tiempo real, que ofrece información a los desarrolladores: estado de tareas de streaming en cola, número de drawcalls, estadísticas de ancho de banda, perfiles de función

3. Unreal Development Kit (UDK)

Unreal Development Kit es la versión gratuita de Unreal Engine. Este motor gráfico para el desarrollo de videojuegos utiliza UnrealScript como lenguaje de programación y es compatible con Windows, sistema operativo de Microsoft.  Al igual que los otros dos motores gráficos permite el diseño de imágenes en 2D y 3D. En general es una solución usada por pequeños desarrolladores.

UDK viene con varias herramientas para la conceptualización y diseño de videojuegos: Unreal Editor, que es la solución para la creación de contenido; Unreal Frontend, que permite la elaboración del producto gráfico final; ActorX, para la importación de mallas; y 3DS Max, para la animación en 3D.

Algunas de sus características más importantes:

– Utiliza las APIs gráficas DirectX 11 y 12.

– Vista de código C++. Sistema de ordenación del código que permite navegar directamente por las funciones del código y ahorrar tiempo.

– Desarrollo de videojuegos inmersivos.

– Inteligencia artificial.

– Animación Persona. Un conjunto de herramientas que permite a los desarrolladores el diseño de mallas de esqueleto y animación.

– Efecto visual en cascada. El editor Cascade VFX permite el diseño de efectos tipo humo, fuego, polvo, suciedad o escombros. Esto se consigue gracias a que millones de partículas son capaces de interactuar a la vez con la luz y generar sombras y movimiento en una escena gráfica.

Síguenos en @BBVAAPIMarket

También podría interesarte