Antes de la era de internet y el flujo de información constante e instantáneo que disfrutamos hoy en día, era mucho más difícil conocer cómo funcionaba la industria del videojuego. Cómo se creó aquel juego que tanto me gustaba, quiénes eran los principales estudios, cómo hacian los juegos, qué herramientas usaban, cuánto tiempo era necesario para desarrollar un videojuego, qué tipo de perfiles trabajan en la industria y qué era necesario para trabajar en videojuegos.
Hoy en día conocemos muchos datos sobre el juego que nos interesa y que compraremos próximamente pero hay una pregunta que muchas personas siguen haciéndose: ¿cómo se hace un videojuego?. El desconocimiento y la desinformación hace que muchas personas a las cuales les encanta este mundo descarten por defecto el dedicarse de lleno a trabajar y disfrutar de los videojuegos creyendo que es «inviable como forma de vida y que es muy difícil», por supuesto, totalmente erróneo.
Éste es el primero de una serie de posts donde intentaré arrojar luz sobre cómo se hace un videojuego, qué estudios se dedican a ello y dónde están, tipos de perfil dentro del desarrollo de un videojuego y qué es necesario saber para empezar.
En la academia 3dCube, donde impartimos el «Máster en Diseño y Desarrollo de Videojuegos 3d», se aprende a crear un videojuego desde cero, teniendo oportunidad de conocer las dos ramas principales del videojuego, la parte artística y la parte técnica, y dentro de éstas a su vez qué disciplinas existen.
Dicho esto empezaré hablando sobre cómo hacer un videojuego y, concretamente, sobre el lugar donde se cuece y se cocina el videojuego, el Game Engine (motor de videojuego).
¿Y qué es un Game Engine? Un Game Engine consiste en una serie de rutinas de programación que permiten el diseño, la creación y la representación de un videojuego. Su función principal es proveer al videojuego de un motor de renderizado para los gráficos 2D y 3D, motor físico o detector de colisiones, sonidos, scripting, animación, inteligencia artificial, redes, streaming, administración de memoria y un escenario gráfico. Se usan distintos lenguajes de programación para crear el Game Engine y, del mismo modo, existen motores de juegos que operan tanto en consolas de sobremesa, consolas portátiles, sistemas operativos, webs y plataformas móviles como teléfonos móviles y tablets.
Hay muchos y muy distintos desarrollados y mejorados por varios estudios a lo largo de los años y que han propiciado la evolución técnica y artística en el videojuego; éstos son tres de los más importantes y utilizados en la actualidad: Unreal Engine, Cryengine y Unity3d.
Unreal Engine es un motor de juego de PC y consolas creado por la compañía Epic Games. Implementado inicialmente en el shooter en primera personaUnreal en 1998, siendo la base de juegos como Unreal Tournament, Deus Ex, Turok, Tom Clancy’s Rainbow Six: Vegas, America’s Army, Red Steel, Gears of War, BioShock, BioShock 2,BioShock Infinite,Star Wars Republic Commando, Batman: Arkham Asylum o Mass Effect. También se ha utilizado en otros géneros como el rol y juegos de perspectiva en tercera persona. Está escrito en C++, siendo compatible con varias plataformas como PC (Microsoft Windows, GNU/Linux), AppleMacintosh (Mac OS, Mac OS X) y la mayoría de consolas (Wii, Xbox 360, PlayStation 3, Xbox One, Play Station 4). La última versión de este motor es el Unreal Engine 4 (abajo un vídeo demo de su potencia gráfica).
CryEngine es un motor de juego creado por la empresa alemana desarrolladora de software Crytek, originalmente un motor de demostración para la empresa Nvidia, que al demostrar un gran potencial se implementa por primera vez en el videojuego Far Cry, desarrollado por la misma empresa creadora del motor. El 30 de marzo de 2006 la totalidad de los derechos de CryEngine son adquiridos por la distribuidora de videojuegos Ubisoft. La siguiente evolución de este motor, CryEngine 2, es utilizado en Crysis de Crytek, y una versión actualizada en Crysis Warhead, una historia paralela de Crysis. En marzo de 2009 en la Conferencia de Desarrolladores de Juegos, CryEngine 3, se muestra en la Xbox 360 y PlayStation 3. En la edición 2010 del certamen Imagina, el motor CryEngine 3 obtuvo el premio a la mejor simulación en tiempo real (vídeo de Cryengine 3 más abajo).
Y, por último, Unity3D, un motor de videojuego multiplataforma creado por Unity Technologies, fundada en 2004 por David Helgason, Nicholas Francis y Joachim Ante en Copenhague (Dinamarca), después de su primer juego, GooBall, que no obtuvo éxito. Los tres reconocieron el valor del motor y las herramientas de desarrollo y se dispuso a crear un motor que todos pudiéramos usar a un precio asequible.
El éxito de Unity ha llegado en parte debido al enfoque en las necesidades de los desarrolladores independientes que no pueden crear ni su propio motor del juego ni las herramientas necesarias o adquirir licencias para utilizar plenamente las opciones que aparecen disponibles. El enfoque de la compañía es «democratizar el desarrollo de juegos», y hacer el desarrollo de contenidos interactivos en 2D y 3D lo más accesible posible a tantas personas en todo el mundo como sea posible.
En 2008, con el auge del iPhone, Unity fue uno de los primeros desarrolladores de motores en empezar a apoyar a la plataforma en su totalidad. Unity está siendo utilizado por el 53,1% de los desarrolladores (según la encuesta de Game Developer tecnología móvil y social), con cientos de juegos lanzados en dispositivos Android e iOS. La última versión de Unity, Unity 4, lanzada a finales de 2012 incluye añadidos como Mecanim animation y soporte para DirectX 11.
Unity está disponible como plataforma de desarrollo para Microsoft Windows y OS X, y permite crear juegos para Windows, OS X, Linux, Xbox 360, PlayStation 3, Playstation Vita, Wii, Wii U, iPad, iPhone, Android y Windows Phone. Gracias al plugin web de Unity, también se pueden desarrollar videojuegos de navegador para Windows y Mac. Desde el sitio web oficial se pueden descargar dos versiones: Unity y Unity Pro.
Éstos son tres de los más usados en el desarrollo de videojuegos y que cualquiera puede adquirir, a diferencia de los creados por los distintos estudios que no han comercializado sus motores de videojuego, como por ejemplo el motor Anvil Engine (Assassin’s Creed, Prince of Persia), Snowdrop (Tom Clancy´s The Division), etc. Abajo podéis ver una demo técnica del próximo Unity 5.
Unreal Engine 4:
Cryengine 3:
Unity 5:
Buena partida!!!
por Manuel J. Gallardo