miércoles, 3 de noviembre de 2010

Motores Gráficos de Videojuegos: El potente espíritu detrás de la máquina.

La evolución gráfica, conceptual  y de jugabilidad que han experimentado los videojuegos durante la última década, no solo demuestran los evidentes progresos conseguidos por la informática, en cuanto a dispositivos tecnológicos, conectividad masiva e inmediata y programas de creación, modelación y edición audiovisual, sino que también responden a las altas expectativas y demandas de millones de usuarios alrededor del mundo, que exigen participar de experiencias lúdicas e interactivas, vertiginosas, contingentes a las herramientas y oportunidades con las que contamos actualmente. La combinación entre la tecnología disponible, el posicionamiento de desarrolladores expertos y su exploración de múltiples campos, temáticas y dispositivos, que convierten al videojuego en una simulación sensorial y situacional cada vez más cercana a la realidad, junto con el surgimiento del  gamer experto y del novato, que igualmente, esperan productos que los desafíen y pongan a prueba sus habilidades ampliamente, han convertido al videojuego en verdaderos guiones cinematográficos interactivos, en los que la calidad de la imagen, la definición de elementos, desde cámara hasta musicalización, y la interactividad relativa al juego, rol y participación del usuario, han llegado a límites insospechados. Todo, gracias a un elemento invisible que ha llevado a la cúspide al videojuego como industria  multidisciplinaria: el Engine, también conocido como Motor Gráfico o Motor de Videojuegos.

Un Motor gráfico es definido como “una serie de rutinas de programación que permiten el diseño, la creación y la representación de un videojuego” (1). Los videojuegos de nueva generación, como se conoce a las entregas que surgen a partir de 1998 aproximadamente, marcan la introducción de los motores gráficos como soporte, puesto que utilizan una gran cantidad de recursos que necesitan ser sintetizados y retransmitidos simultáneamente al desarrollo de la historia y de los acontecimientos que construyen la instancia de juego para el usuario. De este modo, el Engine es conocido popularmente como motor: así como un automóvil posee externamente una carrocería que no sería funcional sin la presencia de un motor que mueva las piezas y las haga trabajar coordinadamente, un videojuego compuesto por modelos tridimensionales, múltiples escenarios, distintos niveles de juego, que van aumentando su grado de dificultad, etc. por solo mencionar algunos elementos constituyentes, necesita igualmente de un motor que procese su arquitectura y agilice el desempeño de las dinámicas que el software propone; En otros términos, el Engine funciona como el soporte y condensador de la virtualidad que se construye a partir de ilustraciones, texturas, objetos en 3D e inteligencia artificial. De este modo, en la actualidad, las últimas versiones de los motores gráficos más populares-que revisaremos a continuación- utilizan una interface basada en rutinas programáticas preestablecidas, también conocidas como APIs: entre éstas encontramos Direct3D para Windows, Glide y OpenGL para Windows, Mac y Linux, entre otras. Estos sistemas de protocolos se encargan de aspectos como la programación de gráficos tridimensionales, “facilitando el manejo y trazado de entidades gráficas elementales, como líneas, polígonos y texturas en cualquier aplicación que despliegue gráficos en 3D, así como efectuar de forma transparente transformaciones geométricas sobre dichas entidades” (2).

En este artículo, hemos querido dejar de lado algunos tecnicismos referentes a la programación, para dar paso al conocimiento de los motores gráficos más utilizados y evidenciar lo que éstos son capaces de realizar, a través de ejemplos concretos extraídos de videojuegos muy populares, precisamente por el alto nivel general que han alcanzado. Para esto, citaremos la lista realizada por el sitio www.3djuegos.com, sobre los 10 mejores motores gráficos en vigencia, y analizaremos parte de sus características y potencialidades:

10. Source Engine, desarrollado por Valve para sus videojuegos Counter-Strike: Source y Half - Life 2. Es ampliamente reconocido como uno de los motores gráficos más modulares, flexibles, amigable con los desarrolladores y poderoso, en cuanto a la creación de ambientes y se caracteriza por posibilitar la inclusión de personajes altamente animados, Inteligencia artificial avanzada (se considera esto como la interacción entre elementos exclusivamente programados y  elementos que son manejados por jugadores reales, siendo este un factor crítico en la configuración del game play) y presentar físicas extraídas del mundo real, entre otras virtudes. Source también cuenta con la tecnología requerida para soportar algunos de los títulos jugados en línea más populares, como Team Fortress 2, contando además con servicio de mensajería a través de voz y textos (3).


9. IW Engine, realizado por la compañía Infinity War y estrenado para Call of Duty 2, siendo usado exitosamente en las posteriores entregas de este juego. Este motor se destaca por contar con tecnologías como: dinámicas de sistemas físicos y de iluminación fieles a la realidad, generación de sombras y efectos de fuego y agua bastante avanzados, así como animación realista de personajes y alta utilización de detalles en la configuración de objetos, etc. (4)


8. id Tech 4, creado por id Sotfware para potenciar a Doom 3. Desarrollado por John Carmack, quien también estuvo a cargo de los engine para Doom y Quake, hoy en día reconocidos como impulsores del desarrollo de esta área de los videojuegos. Entre los aspectos trascendentales de id Tech 4, podemos mencionar la utilización de MegaTexture Rendering Technology, proceso en el que se pintaba una gran textura, de 32,768 x 32,768 para recubrir polígonos amplios y así generar ambientes, tanto interiores como exteriores (5).


7. RAGE (Rock Advanced Game Engine), elaborado por Rage Technology Group y utilizado en juegos como Gran Theft Auto IV. Este motor cuenta con aplicaciones que lo potencian, como Euphoria (de NaturalMotion), encargado de los personajes animados y Bullet, un open source  con engine físico (6).


6. MT Framework, de Capcom, fue creado para la nueva generación de juegos de esta empresa, para las consolas Play Station 3, XboX 360 y más tarde, Wii. Estos son, principalmente, Devil May Cry 4, Dead Rising, Lost Planet y Resident Evil 5 (7). Este motor se caracteriza especialmente por su versatilidad y su facilidad para interactuar con distintas plataformas, incluyendo al PC, además de las consolas ya mencionadas. Según Masachika Katawa, productor de Resident Evil 5, MT Framework puede ser modificado cuantas veces se estime conveniente, cambiando incluso de hardware, pues posee herramientas de desarrollo compatible para distintos sistemas (8).


5. EGO Engine, creado por Codemasters, corresponde a una versión modificada de su antecesor, Neon Game Engine, usado en el videojuego  Colin McRae: Dirt, desarrollado por Codemasters y Sony Entertaiment Computer, que además utilizó su aplicación PhyreEngine (9). EGO Engine se destaca por su trabajo especialmente con los juegos de carreras y automóviles, como Race driver: Grid, y Colin McRae: Dirt 2, entre otros, incursionando exitosamente también en temáticas bélicas, como es el caso de Operation Flashpoint: Dragon Rising.


4. Geo-Mod Engine 2.0 (Geometry Modification Technology), tiene la particularidad de permitir a los jugadores alterar, e incluso destruir, el medioambiente en el que se desarrolla el videojuego, como estrategia para avanzar dentro de éste. Desarrollado por la empresa Volition Inc. en 2001, ha sido utilizado por las dos primeras entregas del juego Red Faction. En 2009, para la realización de Red Faction: Guerrilla, se utilizó una nueva versión de este motor gráfico, que potencia la destrucción dinámica de estructuras como edificios y fortificaciones, avanzando en esta proposición, bastante más limitada en su antecesor (10).


3. Anvil Engine, elaborado por Ubisoft en 2007, para las plataformas Microsoft Windows, Play Station 3 y XboX 360, ha brillado en entregas como Prince of Persia y Assassin’s Creed. Para el desarrollo de modelos tridimensionales, este motor trabaja con los programas 3D Studio Max, para la creación de ambientes y ZBrush, para la construcción de los personajes, usando además HumanIK de Autodesk, para la corrección de las posiciones de los caracteres, así como la animación de extremidades para rutinas de escalamiento y acción en general. Anvil fue mejorado para la segunda entrega de Assassin’s Creed, incluyendo ciclos de día y noche y la misma vegetación empleada en FarCry 2, pero optimizada, respecto a la iluminación, reflejos y efectos especiales (11).


2. CryENGINE 3, creado por Crytec, es la nueva versión del motor gráfico CryEngine y CryEngine 2, usado en juegos como  FarCry, el primero y Crysis, el segundo. En su tercera entrega, CryEngine 3 es promocionado como un motor gráfico multiplataforma, capaz de potenciar juegos tridimensionales en tiempo real y simulaciones. Se trata de uno de los engines de 3 generación apto para realizar todas las operaciones necesarias sin utilizar otros programas o aplicaciones, optimizando todos los recursos que se ponen a disposición para desarrollar un videojuego. Esta innovación fue denominada como “All-in-One solution” (12).


1. Unreal Engine 3, desarrollado por Epic Games, basa su popularidad no sólo en el excelente trabajo que puede realizar, sino también en su accesibilidad, ya que el 5 de noviembre de 2009, Epic Games publicó una versión gratuita de Unreal Development kit, permitiendo a desarrolladores emergentes construir juegos con este motor gráfico. Además, Unreal Engine 3 se destaca por su compatibilidad con múltiples plataformas y consolas, y por poseer herramientas que facilitan el trabajo de diseñadores y artistas. Originalmente, fue creado para el videojuego Unreal, un shooter en primera persona (1998), sirviendo como base para el desarrollo de otros proyectos. En esta tercera versión, Unreal Engine soporta técnicas avanzadas en la creación gráfica, como sombras dinámicas, renderizado para mayor número de objetos simultáneos,  físicas más realistas para efectos de agua, físicas de texturas corporales, mayor destructibilidad de entornos e Inteligencia Artificial potenciada, entre otras mejoras sustentables. Este motor, además, es utilizado en otras funciones no relacionadas con los videojuegos, como elaboración de simulaciones para construcciones, conducción de vehículos, previsualización de películas y generación de terrenos (13). Finalmente, entre los juegos que utilizan Unreal, podemos mencionar Gears of Wars I y II y Unreal Tournament 3.
Dramática evolución gráfica de Unreal Engine, en sus 3 versiones (1, 2 y 3, de izquierda a derecha).

 

Como podemos ver, la evolución de los videojuegos no habría sido posible sin la generación de motores capaces de soportar gráficas animadas cada vez más realistas, interacciones en tiempo real, conexión masiva a través de Internet y una gran versatilidad para desplegar los juegos en distintas plataformas y consolas. La complejidad, belleza, dinámica e interactividad que nos presenta la nueva generación de videojuegos deben todo esto a la optimización de engines que igualmente, requieren del trabajo multidisciplinario de ingenieros, programadores, artistas visuales, diseñadores y animadores, entre muchos más, para conseguir la construcción y funcionamiento de verdaderas “realidades simultáneas”, en las que se mezclan las habilidades de miles de gamers con la inteligencia artificial de máquinas que, dejaron atrás funciones rutinarias, para llegar a simular independencia e improvisación en su actuar. Finalmente, no debemos olvidar que los videojuegos son precisamente eso, una simulación de un contexto, imaginario, real o híbrido, que gracias a la optimización y aprovechamiento de recursos, cada vez parece estar más cerca de destruir los límites de la virtualidad, transportándonos a escenarios en los que podemos ser héroes o villanos, reyes o soldados, dioses o demonios…posibilidades tan infinitas como universos…como el Universo.


Catalina Tonacca
Licenciada en Diseño
Diseñadora con Mención en Comunicación Visual
Encargada de Contenidos  SoulBattery
o - <(O_O)> - o Bip Bip Boink!
cabratonacca@soulbattery.com
www.soulbattery.com