World of Warcraft

Taller de ingeniería: Personalización de creación de personaje

Taller de ingeniería: Personalización de creación de personaje

Ahora que falta menos de una semana para el lanzamiento de Shadowlands, esperamos que hayas tenido la oportunidad de jugar y explorar en el preparche para darles un nuevo brillo a tus personajes con las nuevas opciones de personalización. Mientras estabas probando nuevos peinados y colores de ojos, puede que te hayas preguntado qué fue lo que nos motivó a renovar un sistema que se ha ampliado con cada expansión. ¡Quédate aquí y lee sobre cómo logramos darles vida a estas nuevas opciones!

Un poco de historia

Cuando World of Warcraft se lanzó originalmente, nuestra máxima prioridad era que la mayor cantidad de personas posibles pudieran disfrutar del juego. Con ese fin, hubo que optimizar las especificaciones mínimas para que diversos hardwares pudieran ejecutar el juego, con lo cual hubo que hacer ciertas concesiones. ¿Debíamos incorporar dedos individuales a las manos de los personajes aunque esto afectara la tasa de cuadros, o era preferible dirigir ese poder de procesamiento a un aspecto de la jugabilidad? Desde nuestro lanzamiento en 2004, esas preocupaciones se han desvanecido gracias a las mejoras de rendimiento del hardware de cada generación, lo que nos ha dado la oportunidad de explorar nuevas ideas y mejoras.

Tauren Model Textures

Entonces, ¿qué hemos cambiado y como se construían los primeros personajes? Originalmente, el modelo de datos era relativamente sencillo, pero con el paso del tiempo y la incorporación de nuevas características, las limitaciones empezaron a hacerse evidentes. Para raza y género, solo podrían personalizarse cinco características (que luego aumentaron a ocho en Legion), ¿pero qué haces si ya has usado las cinco? ¿Cómo podían crearse PNJ de Cazadores de demonios antes de Legion, si los elfos de la noche ya usaban las cinco opciones? Los diseñadores claramente tuvieron un momento de inspiración cuando usaron el sistema de objetos para incorporar otra característica. Como las camisas tienen prioridad en la "jerarquía de pegado", podían hacer que parecieran tatuajes incorporando un modelo alfa y transparencia a toda la camisa, excepto por las partes de tatuajes. ¡Qué astutos!

Demon Hunter Tattoos

Sistemas, jugabilidad y diagrama de datos

No queremos repetir los malabares técnicos que acabamos de describir cada vez que un desarrollador desea crear algo especial. Por eso juntamos las lecciones de las expansiones pasadas y nos dimos cuenta de que nuestro objetivo final era hacer una cantidad de personalizaciones sin restricciones, donde cada característica estuviera separada de las demás (como ojos, rostro, barba o bigote), en lugar de verse limitada por cinco opciones genéricas. Queríamos que fuera fácil de conservar, y no queríamos duplicar grandes cantidades de datos (a continuación puedes ver nuestro editor en forma de "hoja de cálculo", donde cada celda es una variante de rostro combinada con una elección de color de ojos). Pero sobre todo, queríamos reducir la carga de los artistas que crean los rasgos y los diseñadores que los incorporan al sistema.

Old Customization Editor
Imagen: El viejo editor de personalización usado antes del preparche de Shadowlands.

Para empezar, empleamos una afiliación flexible de las tablas de bases de datos, donde cada registro contenía una gran cantidad de información, y dividimos todo ese bloque en grupos de datos más pequeños conforme a un criterio más lógico. A cambio, esto nos permitió apartarnos de la edición en hoja de cálculo y crear una serie de editores personalizados y generados automáticamente que se verían muy parecidos a lo que eventualmente los jugadores encontrarían en el juego. Finalmente, el nuevo diagrama de datos nos permitió toda la flexibilidad necesaria y nos ofreció oportunidades para nuevas personalizaciones impresionantes que antes no eran posibles, como que las formas de huargen y gilneano se cambiaran de manera independiente.

New Character Viewing Window
¡Con nuestro conjunto de rasgos y nueva experiencia de edición, agregar nuevas opciones es más simple!

Por último, como habíamos renovado por completo los datos y los elementos de jugabilidad, también necesitábamos estar preparados para que todos los jugadores iniciaran sesión un día con los datos viejos y hacer que sus personajes se vieran igual que antes del preparche (por no mencionar decenas de miles de PNJ). Creamos un proceso de conversión silenciosa con casi 9000 reglas para ocuparnos de esto, que toma en consideración cosas como que la opción de barba para humanos esté dividida en barba, bigote y patillas. El equipo de automatización desarrolló una herramienta capaz de comparar imágenes del antes y el después en lote, para que QA identificara rápidamente las diferencias. ¡Si todo salía bien, nuestros jugadores podrían iniciar sesión en el preparche sin darse cuenta de que nada les había pasado a sus amados personajes!

Reconstrucción del motor

Para facilitar las nuevas opciones de personalización, necesitábamos una renovación completa del motor. Anteriormente, cada conjunto de opciones de personalización requería su propia textura, y la elección de distintas opciones cambiaría la textura que se usaba para un personaje. La cantidad de opciones nuevas de personaje de Shadowlands ha elevado la cuenta de permutación a los millones, así que escribimos un sistema de personaje totalmente nuevo para generar de forma procedimental texturas de jugadores al instante.

Entre otros cambios, todo el código de procesamiento de texturas volvió a escribirse de cero con extensiones SIMD (del inglés: una instrucción, múltiples datos) y un sistema creado para administrar recursos compartidos entre personajes que usan las mismas texturas. Estos cambios aprovechan al máximo la utilización del procesador y nos ayudan a evitar el trabajo de texturas duplicadas para escenas intensas. Junto con el nuevo diagrama de base de datos, esto nos permitió crear un sistema veloz que funciona 100 por ciento por datos y alejarnos de la organización manual de tablas de bases de datos. Aquí hay una imagen de lo que pasa en el motor cuando recibe una solicitud de crear un enano.

New Character Viewing Window
Las texturas intermedias se generan usando una textura de escala de grises y una máscara para generar un tatuaje coloreado de forma procedimental.
New Character Viewing Window
Imagen de un prototipo inicial que muestra las texturas usadas y sus formas de entrada y salida.

Interfaz de usuario y animaciones

Dado el aumento de opciones de personalización, hubo que reescribir la interfaz de usuario por completo para Shadowlands. El nuevo sistema permite a los diseñadores crear y categorizar tantas opciones de personalización como quieran, sin tener que revisar la ingeniería del código o sistemas subyacentes. Cada opción también puede tener tantas variaciones como queramos, y los diseñadores pueden decidir mostrar cada variación con un nombre único, dos paletas de colores o solo con un número. También requirió mucho trabajo hacer que toda la experiencia tuviera una mejor respuesta a los comandos de los jugadores, para que las elecciones se vieran en cuanto el jugador pasaba el mouse por encima en lugar de tener que hacerles clic. Además, ahora la pantalla de creación de personaje y la peluquería comparten toda la interfaz de personalización.

Character Creation Screen UI

También reescribimos toda la pantalla de selección de raza y clase, que ahora permite a nuestros fabulosos diseñadores y artistas agregar animaciones y efectos personalizados. Como estamos en la pantalla de creación, los sistemas de juego principales aún no están en ejecución, y esto requería una refactorización extensiva. En el nuevo sistema, los artistas y diseñadores tienen todo el control de las animaciones y los efectos que se usan para cada raza, clase y combinación de género, y pueden realizar cambios de ser necesarios.


¡Esperamos que hayas disfrutado de este vistazo detrás de escena a la personalización de personaje tanto como disfrutamos las apariencias originales que nacieron gracias a estos cambios! ¡Mantente a la moda, Azeroth!

Artículo siguiente

Noticias destacadas