World of Warcraft

L’atelier de l’ingénieur : personnalisation et création de personnages

L’atelier de l’ingénieur : personnalisation et création de personnages

Nous sommes à moins d’une semaine de la sortie de Shadowlands, et nous espérons que vous avez pu profiter de la mise à jour de pré-lancement et relooker vos personnages grâce aux nouvelles options de personnalisation ! En jouant avec les nouvelles coiffures et couleurs d’yeux disponibles, vous vous êtes peut-être demandé comment nous avions appréhendé la refonte de ce système essentiel, qui a été étoffé au fil des extensions. Lisez cet article pour découvrir comment nous avons donné vie à toutes ces nouvelles options !

Un peu d’histoire

À l’époque de la sortie de World of Warcraft, notre priorité absolue était de rendre le jeu accessible à autant de joueurs que possible. Pour ce faire, il a fallu optimiser la configuration minimale afin qu’un maximum de machines puissent faire tourner le jeu. Nous avons donc dû faire des compromis. Fallait-il modéliser tous les doigts des mains des personnages au risque d’affecter le taux de rafraîchissement du jeu, ou valait-il mieux réserver cette puissance au gameplay lui-même ? Depuis le lancement du jeu, en 2004, les gains de performances permis par l’évolution du matériel ont rendu ces questions obsolètes ; nous avions donc le champ libre pour explorer de nouvelles idées et améliorations.

Textures de modèle de Taurène

Alors, qu’avons-nous changé et comment étaient construits les premiers personnages ? À l’origine, le modèle de données était assez simple, mais avec le temps et l’ajout de nouvelles options, des difficultés sont apparues. Pour chaque race et chaque genre, seuls cinq éléments étaient personnalisables (ce nombre est passé à huit dans Legion par la suite), mais que faire une fois ces cinq options utilisées ? Comment créer des PNJ chasseurs de démons avant Legion alors que les Elfes de la nuit utilisaient déjà cinq options ? Les concepteurs ont eu un éclair de génie en se servant du système d’objets pour créer une nouvelle option : les chemises étant les premiers éléments superposés au personnage, il était possible de leur donner l’apparence de tatouages en leur ajoutant une couche alpha et de la transparence couvrant l’ensemble du vêtement, sauf le dessin des tatouages ! Malin !

Tatouages de chasseur de démons

Systèmes, gameplay et structuration des données

La gymnastique technique décrite plus haut n’est pas quelque chose que nous souhaitons imposer à nos développeurs chaque fois que ceux-ci désirent créer quelque chose de spécial. Nous avons donc tiré les leçons des extensions précédentes, notre objectif étant de pouvoir créer un nombre illimité d’options, chaque élément étant indépendant du reste (yeux, visages, barbe ou moustache, par exemple), au lieu d’être cantonnés à cinq emplacements génériques. Nous voulions un système plus facile à maintenir, et nous souhaitions éviter de dupliquer d’importantes quantités de données (voir notre éditeur sous forme de tableau ci-dessous, où chaque cellule représente une variante de visage croisée avec une couleur de peau). Surtout, nous voulions réduire la charge globale incombant aux artistes qui créent ces éléments et aux concepteurs qui les assemblent.

Ancien éditeur de personnalisation
Ci-dessus : l’ancien éditeur de personnalisation, utilisé avant la mise à jour de pré-lancement de Shadowlands

Nous avons commencé par prendre plusieurs tables de base de données, où chaque entrée contient une quantité d’informations monumentale, que nous avons scindées en groupements de données logiques plus petits. Nous avons alors pu nous séparer du tableur et créer une série d’éditeurs personnalisés et générés automatiquement, d’apparence très similaire à ce qui deviendrait finalement l’éditeur proposé aux joueurs dans le jeu. Au bout du compte, cette restructuration des données nous a offert toute la flexibilité donc nous avions besoin et nous a permis de créer de nouvelles options de personnalisation géniales qui n’étaient pas réalisables auparavant, comme la possibilité de modifier séparément les formes de Worgen et de Gilnéen.

Nouvelle fenêtre de visualisation de personnage
Avec nos groupements de ressources et notre nouveau processus d’édition, ajouter de nouvelles options est devenu plus simple !

Enfin, après avoir complètement réorganisé les données et éléments de gameplay, nous devions nous préparer à accueillir tous les joueurs qui allaient se connecter le jour J avec leurs anciennes données, et faire en sorte que leurs personnages aient la même apparence qu’avant la mise à jour de pré-lancement (sans parler des dizaines de milliers de PNJ). Pour ce faire, nous avons créé un processus de conversion silencieux contenant près de 9 000 règles, qui tient compte de changements comme ceux apportés à la barbe des Humains, désormais divisée en plusieurs options : barbe, moustache et pattes. L’équipe d’automatisation a créé un outil capable de comparer en masse des captures d’écran avant/après afin d’aider l’assurance qualité à identifier rapidement les potentielles erreurs. L’idée était de faire en sorte que les joueurs se connectent le jour de la mise à jour de pré-lancement sans remarquer le moindre changement chez leur personnage adoré !

Reconstruire le moteur

Une refonte complète du moteur était nécessaire pour simplifier la création de nouvelles options de personnalisation. Par le passé, chaque combinaison d’options devait avoir sa propre texture, et modifier des options nécessitait de changer la texture utilisée par le personnage. Avec les nouvelles options de personnalisation de Shadowlands, les combinaisons possibles se comptent en millions, c’est pourquoi il a fallu créer un tout nouveau système afin de générer automatiquement les textures à la volée.

En plus des autres changements, tout le code de traitement des textures a été entièrement réécrit à l’aide d’extensions SIMD (Single Instruction Multiple Data) et d’un système destiné à gérer les ressources partagées entre les personnages qui utilisent les mêmes textures. Ces changements optimisent l’utilisation du processeur et évitent d’avoir à traiter deux fois plus de textures dans les scènes intensives. Combinée à la nouvelle structure de nos bases de données, cette nouveauté nous a permis de créer un système extrêmement rapide reposant entièrement sur les données, à la différence des anciennes tables de bases de données configurées manuellement. Voici un GIF qui illustre ce qu’il se passe dans le moteur lorsque celui-ci doit générer un Orc.

Nouvelle fenêtre de visualisation de personnage
Les textures intermédiaires sont générées en utilisant une texture en niveaux de gris et un masque pour produire un tatouage coloré de manière procédurale.
Nouvelle fenêtre de visualisation de personnage
Capture d’écran d’un des premiers prototypes, montrant les textures utilisées, leurs sources et les résultats obtenus.

Interface utilisateur et animations

Pour accueillir autant d’options de personnalisation, l’interface utilisateur a dû être complètement repensée pour Shadowlands. Le nouveau système permet aux concepteurs de créer et de catégoriser autant d’options de personnalisation qu’ils le souhaitent, sans avoir besoin de retravailler le code ou les systèmes sous-jacents. Chaque option peut également proposer autant de choix que nous le souhaitons, et les concepteurs peuvent décider de présenter chaque choix sous la forme d’un nom personnalisé, d’un ou deux échantillons de couleur, ou d’un nombre. En outre, nous avons travaillé dur pour rendre l’expérience nettement plus réactive aux actions du joueur : les différentes options peuvent ainsi être prévisualisées en survolant chaque choix ; plus besoin de cliquer ! Cette nouvelle interface est utilisée dans l’écran de création de personnage et dans les salons de coiffure.

Interface de création de personnage

Nous avons également retravaillé l’intégralité de l’écran de sélection de race et de classe pour permettre à nos incroyables concepteurs et graphistes d’y ajouter des animations et effets personnalisés. Dans l’écran de création de personnage, les principaux systèmes du jeu ne sont pas encore lancés, et il a donc fallu effectuer une refonte complète. Avec ce nouveau système, les graphistes contrôlent pleinement les animations et effets utilisés pour chaque combinaison de race, classe et genre, et peuvent apporter les changements nécessaires.


Nous espérons que vous avez apprécié cet aperçu des coulisses des options de personnalisation comme nous avons aimé découvrir les personnages pleins d’originalité nés de ces changements ! Continuez d’avoir la classe en Azeroth !

Article suivant

Actualités à la une