Overwatch

Les coulisses du moteur et des outils d’Overwatch

Les coulisses du moteur et des outils d’Overwatch

Ce monde a plus besoin de héros que jamais, dirait-on. Et les héros numériques ont besoin de bien des choses pour exister : des motivations remarquables, une esthétique emblématique, des designs bien conçus. Mais ils ont surtout besoin de quantités monumentales de code. Plus de 2,7 millions de lignes de code en perpétuelle évolution constituent actuellement les outils qui font vivre Overwatch.

Les ingénieurs des équipes moteur et outils d’Overwatch sont les gardiens de cet héritage, et le jeu n’existerait pas sans leur travail.

L’interface de TED, l’éditeur d’Overwatch.

L’équipe moteur

L’équipe moteur d’Overwatch construit l’infrastructure technique des nombreux systèmes du jeu, comme les graphismes, les effets visuels, la physique et le son, autant de composantes nécessaires pour le développement. Le responsable de l’ingénierie logicielle Phil Teschner, qui a travaillé sur la série Halo et sur Les Royaumes d’Amalur : Reckoning avant de rejoindre Blizzard, est chargé de gérer ces composantes au sein de l’équipe moteur.

Phil Teschner a accumulé, de son propre aveu, « beaucoup trop d’heures » de jeu en cherchant à jouer à tous les titres de Blizzard, avant que son expérience dans le développement graphique multi-plateforme ne le conduise à accepter un poste ici en 2012, pour travailler sur un nouveau MMO dont le nom de code était « projet Titan ». Bien que Titan ait fini par être annulé, Phil a mis la main à la pâte pour retravailler certaines de ses composantes afin que son ADN perdure au sein d’Overwatch.

C’est grâce à Phil et à l’équipe moteur qu’Overwatch peut tourner sur différentes plateformes (PC, PlayStation 4, Xbox One et Nintendo Switch) de la façon la plus fluide possible. Leur travail sur les difficultés techniques de chaque élément matériel permet aux autres ingénieurs d’Overwatch de se concentrer plus sur le développement des fonctionnalités du jeu proprement dit que sur les implications inhérentes aux différentes plateformes. Comme presque tout ce qui se passe au sein de l’équipe Overwatch, il s’agit d’un véritable effort de groupe : Phil indique qu’il « ne voit pas le moindre problème qui n’impliquerait pas qu’on se réunisse tous pour essayer de trouver une solution ensemble. »

L’équipe moteur est aussi chargée de suivre les statistiques de performance, la consommation de mémoire, la taille des mises à jour et les temps de chargement et de les améliorer, non seulement dans leur propre intérêt, mais aussi pour faire de la place pour les nouvelles fonctionnalités. Par exemple, les graphistes qui cherchent à rendre la peau des personnages plus réaliste ou à ajouter de nouvelles façons de simuler les mouvements des tissus travaillent avec l’équipe moteur pour modifier les composantes fondamentales sans avoir à rebâtir le jeu entier à partir de zéro.

Bien entendu, les nouvelles composantes doivent tout de même être présentées aux designers, graphistes et autres ingénieurs de l’équipe Overwatch d’une façon efficace et utilisable afin qu’ils puissent produire un jeu amusant et jouable. C’est là que les outils de développement entrent en jeu.


L’équipe outils

L’équipe outils d’Overwatch s’occupe essentiellement de « TED », l’éditeur du jeu, une interface visuelle qui permet aux graphistes, designers et autres ingénieurs de travailler à partir des composantes du moteur pour concevoir des cartes, écrire des scripts pour les héros, régler les temps de recharge, créer les animations et sons qui donnent vie à tout ça, et relier le tout. Son travail s’articule autour de deux questions :

1. Où les autres membres de l’équipe passent-ils la majeure partie de leur temps pour créer le jeu ?
2. Peut-on rendre ce processus plus facile et plus agréable ?

Le responsable de l’ingénierie logicielle Rowan Hamilton, qui a travaillé sur la série Killzone (et, comme Phil, sur le projet Titan avant Overwatch), a créé son premier jeu à la fac. Il le décrit comme « un clone de Diablo » et, comme de juste, met son échec à au moins un examen sur le compte des heures qu’il a passées à jouer à Diablo et StarCraft.

Le mot d’ordre de Rowan pour l’équipe outils est bref et bien choisi : toute personne modifiant le gameplay d’Overwatch doit être capable de jouer avec ses changements, rapidement et régulièrement. « Plus vous aimez créer votre jeu, déclare-t-il, plus votre jeu a des chances d’être bon. »

Dans cet objectif, TED est conçu sur mesure pour les développeurs d’Overwatch, grâce à tout ce que l’équipe a appris au fil des années. Il intègre des processus uniques pour modifier des contenus aussi précis que le choix du héros ou la génération de l’Action de la partie, ainsi que des représentations de concepts spécifiques à Overwatch, comme les modèles et les couleurs d’équipes.

Mais TED ne sert pas seulement à créer Overwatch tel que nous le connaissons aujourd’hui : il est assez souple pour permettre des expérimentations créatives visant l’avenir d’Overwatch. « Les développeurs peuvent essayer ce qu’ils veulent, note Rowan, ils savent qu’on ne les laissera pas casser le jeu, et ils peuvent très facilement défaire ce qu’ils ont fait, revenir en arrière et opter pour une approche différente. » La visualisation offerte par TED permet aux développeurs de voir comment les 3 millions de ressources d’Overwatch et ses téraoctets de données source s’assemblent, ce qui leur donne la possibilité d’extraire facilement des composants existants d’Overwatch pour modifier quelque chose de bien connu… ou créer des prototypes d’idées complètement nouvelles.

Un vaisseau omniaque dans le ciel de Rio, vu dans la version d’Overwatch présentée à la BlizzCon 2019

Des horizons explosifs

Travailler sur les fonctionnalités qui font Overwatch ne consiste pas uniquement à améliorer et mettre à jour. De nouveaux tests ont lieu chaque jour, nombreux, et certains sont d’une ampleur impressionnante. Les outils de développement et le moteur doivent prendre en compte les nouvelles avancées matérielles pour Overwatch, et les expériences de jeu inédites d’Overwatch 2.

Lors de la BlizzCon 2019, l’équipe a dévoilé la première version jouable d’une carte d’Overwatch 2, Rio, qui a été amplement diffusée depuis. Mais avant que Rio ne fasse son apparition à la convention, Phil Teschner et l’équipe moteur se sont retrouvés en première ligne, face à un défi dont l’intitulé était d’une simplicité trompeuse : les designers voulaient faire sauter un vaisseau.

Et ils ne parlaient pas d’une petite explosion dans le ciel en guise de décor, mais de la destruction d’un énorme vaisseau omniaque, avec des agents d’Overwatch en plein combat et des incendies qui se déclarent en son sein. Histoire de solliciter davantage le moteur, l’éclairage devait changer au fil de la carte pour illustrer l’état critique du réacteur du vaisseau.

Quand des parties d’un niveau explosent, on s’attend à ce que la façon dont elles sont éclairées change. Dans le monde réel, des modifications d’éclairage se produisent tout au long de la journée, et nos yeux s’adaptent aux changements de visibilité. L’impact de ces changements est plus visible près des sources lumineuses, et moins flagrant de loin ; de plus, une modification d’éclairage dans une pièce peut avoir une influence sur la lumière d’une pièce voisine.

TED, l’éditeur d’Overwatch, a été utilisé pour ajouter un éclairage dynamique à la carte Rio pour la BlizzCon 2019

Un éclairage « dynamique » en temps réel de ce genre peut être exigeant en termes de performances, tout particulièrement lorsqu’il change sur toute une carte. Overwatch étant conçu pour différents systèmes de jeu, l’équipe moteur devait trouver une solution pour gérer un évènement de cette ampleur sans nuire aux performances du jeu.

Tout d’abord, ils ont isolé les modifications d’éclairage dynamique en fonction des secteurs de la carte Rio. Les graphistes chargés de l’éclairage ont placé de petites sondes un peu partout dans le niveau en construction afin d’identifier les surfaces devant être visiblement impactées par les changements de luminosité (comme les incendies). Ensuite, les ingénieurs ont codé un script permettant l’éclairage dynamique de ces surfaces uniquement lorsque le vaisseau commence à exploser, puis de le désactiver une fois l’évènement terminé.

Les cartes JcE (joueur contre environnement) d’Overwatch 2 sont plus vastes et plus complexes que des cartes d’Overwatch comme Représailles ou Avis de tempête. Cela ne représente pas seulement plus de distance à couvrir, mais aussi des missions plus longues impliquant davantage de types d’ennemis et des combats plus élaborés. Ajouter des types d’ennemis donne lieu à des interactions complexes entre les capacités des ennemis et des héros, mais aussi entre ennemis, avec des unités à courte et longue portée qui coordonnent leurs attaques, par exemple.

Les designers qui travaillent avec les outils de développement d’Overwatch ont besoin de pouvoir visualiser un combat composé de multiples vagues qui se déroule sur plusieurs minutes. Pour créer quelque chose de passionnant, ils doivent être en mesure de prévisualiser l’endroit où un ennemi va apparaître, ainsi que sa trajectoire sur la carte jusqu’à ce qu’un agent d’Overwatch motivé lui règle son compte. Et bien entendu, ce niveau supplémentaire de complexité doit avoir un impact mesuré sur les performances du jeu.

C’est un défi que l’équipe outils n’a pas encore complètement résolu, mais c’est précisément pour travailler sur ce genre de problèmes qu’elle existe.


Comment ils travaillent

Les développeurs des outils et du moteur collaborent avec les autres membres de l’équipe Overwatch pour donner vie aux nouveaux éléments de gameplay. La création d’une fonctionnalité importante, comme l’ajout de nouvelles techniques pour faire apparaître les unités, débute par une réunion de lancement entre les ingénieurs du gameplay et les designers qui travaillent sur les cartes, héros et capacités d’Overwatch afin que chacun comprenne ce que les autres cherchent à obtenir et trouve des moyens d’y parvenir. Tout au long du processus, l’équipe outils cherche les aspects de ces éléments de gameplay qui sont les plus pénibles à construire, et crée des prototypes jusqu’à ce qu’il soit « d’une facilité déconcertante » d’en construire des dizaines ou des centaines.

Les modifications des fonctionnalités existantes peuvent aussi avoir d’énormes ramifications. Quand l’équipe de conception s’est attelée à la refonte de la capacité ultime de Symmetra, et au remplacement du Téléporteur par l’actuel Écran photonique, elle savait que l’écran projeté allait devoir s’étendre sur toute la carte pour donner la sensation d’un impact important. Les membres de l’équipe moteur et les graphistes chargés des effets ont travaillé ensemble pour affiner l’aspect et le comportement de l’écran sans créer de problèmes visuels peu esthétiques ou de soucis de performances.

L’équipe moteur aide même les graphistes et designers à préciser et rendre viables leurs « idées délirantes », comme une capacité ultime permettant de cloner un héros. Ils trouvent des solutions pour rendre possible ce qui semblait impossible tout en travaillant dans le cadre restrictif des plateformes de jeu, par exemple en définissant la capacité Duplication d’Écho de telle façon que les joueurs dont le héros a été cloné ne puissent pas en changer lorsqu’ils sont éliminés (ce qui nécessiterait le chargement d’un treizième héros au sein du jeu).

Au moment où j’écris ces lignes, les équipes moteur et outils, comme bon nombre d’entre nous, sont en télétravail ; et leurs membres découvrent que, malgré la distance qui les sépare de leurs collègues, ils n’en sont que plus proches par certains aspects. Ils se réunissent plusieurs fois par semaine pour se détendre lors des tests en interne, et discutent avec enthousiasme de tout ce qui a changé ou été ajouté depuis la semaine précédente, et ils se servent de ces discussions pour préciser leurs projets suivants.

Phil et Rowan ne manquent pas de raisons d’apprécier leur travail. Leurs collègues sont pleins de talent et d’enthousiasme. Toute l’équipe a son mot à dire pour les décisions importantes. Ils participent à l’élaboration d’un jeu qu’ils aiment créer et auquel ils aiment jouer.

Et ils s’accordent pour dire qu’Overwatch a vraiment quelque chose de spécial.

Phil Teschner le met sur le compte des joueurs. « J’ai travaillé sur de nombreux jeux différents, et la réaction de la communauté des fans au monde d’Overwatch représente l’un des grands moments de ma carrière. L’enthousiasme suscité par le jeu, les fan arts qu’on reçoit, voir des cosplays de nos personnages… Ce sont des expériences complètement nouvelles pour moi. »

Pour Rowan Hamilton, qui a quitté les Pays-Bas pour la Californie il y a sept ans, l’équipe est devenue une véritable famille. « J’ai déménagé depuis l’autre bout du monde pour travailler sur ce jeu, souligne-t-il. On tisse des liens très étroits quand on travaille sur un seul projet avec un groupe très soudé pendant aussi longtemps.

Je ne me vois pas faire autre chose de mon temps. »

L’équipe Overwatch est à la recherche d’ingénieurs brillants et motivés. Consultez notre page Carrières pour en savoir plus !

Article suivant

Actualités à la une