¿Cómo se crea un AAA?

El desarrollo de un juego AAA puede llevar años de trabajo. Hoy te contamos algunos entresijos del proceso creador.

AAA

(Guilty Gear Xrd -SIGN - A la izquierda la malla 3D en el software de modelado y a la derecha como se ve en el juego)

 

Cada año se publican miles de juegos, y los usuarios hacemos seguimiento de los videos, tráilers, noticias e imágenes que se publican en YouTube, foros y redes sociales. Después, dedicamos horas y horas de nuestra vida a exprimirlos y a disfrutar de las historias que nos cuentan, pero poca gente sabe cómo comienza realmente un juego, pasando de ser un proyecto vacío que poco a poco va cogiendo la forma para terminar con un producto que puede darnos cientos o miles de horas de diversión. Desde aquí queremos iluminar un poco ese proceso de creación, pues en ocasiones puede ser igual de interesante, o más, que el propio juego. 

En la actualidad, todos los juegos AAA basan sus desarrollos en varias partes: los recursos gráficos, los de audio y el motor del juego sobre el que se monta el juego en sí.

 

Los gráficos

Los gráficos son la parte que, seguramente, tiene un mayor impacto en un primer momento y que debe ser cuidada hasta el extremo, ya se quieran conseguir gráficos fotorrealistas como los de Battlefield V o cell shading como los de Dragon Ball Fighterz, pues unos malos gráficos suelen conllevar un rechazo casi automático por una gran parte del público general.

Los artistas disponen de decenas de herramientas para crear los modelos o texturas del juego, siendo tal vez las más famosas Maya, 3DS Max, Zbrush y Photoshop. En estos programas no solo se modelan y se animan las mallas 3D que después se importarán en el motor gráfico, sino que también se trabaja la iluminación usando normal maps, texturización aplicando imágenes sobre los modelos y shaders, programas que modifican el funcionamiento de la tarjeta gráfica o GPU a través de vertex y pixel shaders.

La animación de estas mallas puede hacerse a mano fotograma a fotograma, consiguiendo unos resultados espectaculares, pero costosos por el tiempo que se necesita. Otras formas son la captura de movimientos, la grabación de actores reales en espacios con cámaras 3D o bien mediante simulación de físicas.

AAA

(Ellen Page y Willem Dafoe en plena sesión de captura de movimiento para el juego Beyond Two Souls, desarrollado por el estudio Quantic Dream para Sony PlayStation)

  

La banda sonora también cuenta

Para el audio nos encontramos con herramientas como Wwise, Fabric o Spatial Workstation. Los sonidos y la música pueden parecer la parte menos importante del desarrollo de un juego, pero gente como Akira Yamaoka (Silent Hill), Nobuo Uematsu (Final Fantasy) o Gustavo Santaolalla (Last of Us) no estarían del todo de acuerdo, ya que son los creadores de varias de las bandas sonoras más famosas.

 

Una vez se han creado los gráficos y el audio, estos se pasan al motor del juego, la pieza encargada de que todo funcione, como si fuera el director de orquesta. De los disponibles para licenciar por particulares y otros estudios de videojuegos dos son las estrellas y los más utilizados en la actualidad, Unreal Engine de Epic Games (la gente de  Fortnite) y Unity.

AAA

(Unreal 1/Epic Games)

 

Unreal Engine nació en 1998 cuando EPIC desarrolló el clásico Unreal. En la época de la 3DFX Voodoo y Glide, EPIC creó un FPS de ciencia ficción enorme, con unos gráficos espectaculares para la época y, con la escala que adquirió el juego, no tuvo más remedio que crear un conjunto de herramientas que serían la semilla de lo que hoy tal vez sea el motor más versátil. Una vez terminado Unreal, otros clásicos como Unreal Tournament o Unreal 2 nacieron de ese motor, y este evolucionó poco a poco hasta convertirse en una herramienta empleada por otros estudios a lo largo de todo el mundo. Las cuatro versiones que han salido a la luz hasta ahora nos han dado juegos de la talla de BioShock, Deus Ex, Splinter Cell, Army of Two o Batman Arkham Asylum 

(Recomendamos echar un ojo a la lista completa de títulos desarrollados con las distintas versiones de Unreal Engine)

 

AAA

(Blacksmith, una demo impresionante hecha con Unity)

 

Por su parte, Unity nació como un motor de juegos solo para plataformas Mac, pero poco a poco fue ampliando su base y llegando a todo tipo de dispositivos. En la actualidad es el más usado por desarrolladores indie y para desarrollo móvil. Entre los juegos hechos con Unity podemos encontrar Overcooked, Hollow Knight, Gris, Cuphead o Yooka-Laylee (con Unity también recomendamos ver la lista de juegos desarrollados, pues muchísimas de las joyas indie han sido creadas con él)

AAA

(Battlefield V / Electronic Arts - Dice)

 

Los grandes estudios como EA, Ubisoft o equipos de desarrollo de juegos AAA han creado sus propios motores, con la misma calidad o más que Unreal Engine o Unity. Electronic Arts compró Dice en el año 2006, y con ello se llevó toda su tecnología: el motor Frostbyte. Con esta jugada EA consiguió independizarse de Epic Games y del Unreal Engine y centrar todos sus desarrollos en el motor de Dice, pudiendo disfrutar gracias a él de juegos como Battlefield IV, Battlefield V o Mass Effect.

AAA

(Assassin`s Creed / UbiSoft) 

Ubisoft tomó la decisión con el primer Assassin's Creed de crear su propia tecnología. En un primer momento se llamó Scimitar Engine para después llamarse Anvil Engine, estando este motor en su segunda versión actualmente. Desde su creación, todos los estudios de Ubi lo han usado y juegos como For Honor, Rainbow Six o Assassin's Creed Odissey han sido creados con él. Solamente uno de los estudios de Ubi trabaja con otro motor, y esos son la gente de Massive Entertainment, creadores de The Division. Cuando comenzaron el titánico proyecto que era crear un juego online de esas características (TPS mezclado con RPG en un mundo abierto online) decidieron crear una tecnología propia desde cero, un motor que se llamaría Snow Drop.

AAA

(The Division / UbiSoft - Massive Entertainment)

 

Estos motores, a su vez, son herramientas montadas sobre API`s de terceros para poder reproducir el audio, generar los gráficos, recibir entrada desde mandos o hacer comunicación por Internet y crear juegos online. Las API´s más famosas son DirectX, creada por Microsoft para crear todo tipo de aplicaciones multimedia bajo Windows, y OpenGL/Vulkan/OpenAL, un API gráfico creado por el grupo Khronos, una unión de distintas empresas como pueden ser Epic, nVidia, Apple, Valve o AMD

Los procesos que usan estos motores para representar los  juegos son muy complejos, pero a grandes rasgos serían los siguientes:

  • El audio se descomprime en RAM si es pequeño (sonidos de disparos, explosiones, ruidos del entorno…) para que la reproducción sea rápida e inmediata. Si son pistas de música, suelen hacerse cargas en streaming desde el disco, pues no se necesita la misma velocidad que para otro tipo de sonidos.
  • Los modelos 3D se rasterizan desde triángulos a pixeles usando primero vertex shaders y después pixels shaders. Los primeros se ocupan de transformar los vértices de las mallas de un espacio 3D a un espacio 2D como es el de la pantalla de un PC o un televisor para una consola. Los segundos se encargan de aplicar color a cada pixel transformado por los vertex shaders.
  • Una vez todos los recursos están cargados, pequeños programas llamados scripts se encargan de responder a todos los eventos que crean la lógica del juego: el usuario interactúa con el mando, se reciben datos de otros jugadores en partidas online, la IA del juego hace que los enemigos ataquen al jugador...

 

El segundo punto, el de cómo se representan los modelos en el juego, es la parte que más ha cambiado durante las últimas décadas. Ahora podemos usar los vertex y los pixel shaders para crear todo tipo de efectos gráficos, algo imposible hace poco más de una década, cuando el pipeline de la gráfica estaba prefijado. Con esta libertad se pueden crear efectos para gráficos fotorrealistas como pueden ser el Subsurface Scattering, Parallax Mapping o, posiblemente uno de los mayores avances de los últimos años, el Physically based rendering o PBR, que mediante simulaciones físicas hace que, por ejemplo, los materiales de un modelo 3D sean capaces de reaccionar a la luz.

AAA

(Battlefield V con Raytracing activado)

 

En los últimos meses, gracias a las nuevas gráficas RTX de nVidia, se ha conseguido implementar el ray tracing en tiempo real dentro de los juegos, siendo Battlefield V el primero en hacerlo. El ray tracing consiste en trazar rayos que simulan la luz para calcular los rebotes de estos y poder representar la refracción y la reflexión sobre los materiales de una escena 3D.

 

Una de las partes que más importancia ha ganado en los últimos años ha sido la del apartado online. Para poder ofrecernos esas partidas contra otros jugadores, los juegos necesitan hacer uso de servidores que se encargan de mandar la información entre los diferentes jugadores de la partida, pudiendo ser estos dedicados o p2p. Los dedicados son servidores que las propias desarrolladoras ponen a disposición de los usuarios, con latencias normalmente bajas (que no siempre, a veces se producen partidas con lag) y los p2p, en los que realmente es el equipo del jugador que crea la partida el que hace de servidor entre todos los jugadores. La diferencia entre los dos es básicamente el precio de mantenimiento de los mismos, los dedicados cuestan mucho dinero a las empresas, aunque ofrecen mucho mejor rendimiento que los p2p, por lo que los juegos que se decantan por este tipo son más aplaudidos entre los usuarios.

 

Este resumen que hemos hecho es un breve esbozo del larguísimo proceso de creación de un AAA, una tarea que suele durar entre 3 y 4 años e involucra a equipos que suelen ir de 100 a 300 personas, con casos extremos de 500 personas en títulos muy potentes.

CONTINÚA LEYENDO