L'île céleste dans The Legend of Zelda : Tierkin a été « agressivement négligée ». Technologie qui connecte de manière transparente les trois mondes et environnements de production : ciel, sol et sous-sol [CEDEC2024]

La plus grande conférence du Japon destinée aux développeurs de divertissement informatique se tiendra du mercredi 21 août au vendredi 23 août 2024.« CEDEC2024 (Conférence des développeurs de divertissement informatique 2024) ». La séance tenue le deuxième jour, ""La Légende de Zelda Les Larmes du Royaume"(ci-dessous,"Tiakine") qui connecte le monde - de manière transparente dans le ciel, sur terre, sous terre et en production.

Intervenant : Département de planification et de production de Nintendo Co., Ltd."Tiakine"Chère équipe de développement. L'équipe est composée de Takuhiro Doda, directeur technique, Tomohisa Saito, responsable de la programmation terrain, et Takahiro Okuda, directeur de la programmation.

"Tiakine"est un titre dont la caractéristique majeure est la capacité de voyager de manière transparente entre le monde céleste et le monde souterrain. L'équipe de développement souhaitait également créer une expérience de jeu permettant des mouvements fluides dans le ciel, sur terre et sous terre, mais cela est devenu l'un des défis techniques majeurs. Dans cette conférence, en plus d'expliquer la technologie qui rend les trois mondes transparents, il a également expliqué la méthode utilisée pour rendre le flux de production lui-même transparent pendant le développement.

Extension du travail précédent, qui était en fait en 2D, vers la 3D

"Tiakine"Le travail précédent de ``La Légende de Zelda : Breath of the Wild"(ci-dessous,"Brew Wai") était également un titre qui visait à créer un monde vaste et homogène et un haut degré de liberté dans le gameplay.

Pour atteindre cet objectif, le développement a commencé par la sélection des technologies permettant d’atteindre l’objectif. Par exemple, il est nécessaire de préparer un grand nombre de polygones pour exprimer un vaste monde, donc au lieu du « rendu direct » qui a tendance à nécessiter un passage en profondeur, un seul G-buffer (informations de profondeur, informations normales, etc.) est utilisé. . Nous avons adopté le « rendu différé », qui nécessite uniquement de dessiner la valeur de .

La sélection de technologies couvre un large éventail de domaines, notamment le flux de travail, la communication et le contrôle de version. Lors de la prise de ces décisions, l’immensité du monde et la fluidité des mouvements ont été un enjeu majeur.

Passé "légende de zeldaLe vaste monde était représenté dans la série, mais en interne, il avait la même structure que le jeu de changement de scène. Par conséquent, les essais et les erreurs ont recommencé à exprimer un champ vaste et homogène.

Au début, la taille du monde était déterminée en appliquant les superficies au sol des séries précédentes et des régions du monde réel. Nous avons réfléchi au type de « jeu » à créer là-bas, comme par exemple placer temporairement des couleurs régionales.

Grâce à ce processus, il est devenu clair que l'équipe de développement se concentrait sur « un monde vaste et plat »."Brew Waï"Ainsi, en réfléchissant à la structure du domaine, j’ai décidé de penser le monde en deux dimensions. La 2D facilite la réflexion sur les éléments du jeu et la structure des données est simple. Nous avons pu simplifier diverses questions telles que l'édition, la visualisation des informations et la gestion de l'information.

La structure bidimensionnelle présente des avantages en termes de limitations matérielles de la Wii U et de mouvements fluides. J'ai également pu définir et charger le LOD (*) pour qu'il corresponde aux mouvements bidimensionnels du personnage principal.

*LOD : Abréviation de Niveau de Détail. Une méthode qui accélère le dessin en contrôlant le nombre de polygones dans un modèle en fonction de sa distance par rapport à la caméra, rendant ainsi les modèles distants avec moins de polygones.

D’un autre côté, le choix de la technologie produit toujours des choses qui ne peuvent pas être réalisées. Par exemple, le rendu différé mentionné précédemment est ``éclaboussure 3Il n'est pas doué pour exprimer divers matériaux tels que le rendu direct, qui est utilisé dans des films tels que ``. Certaines technologies nécessitaient un comportement inattendu ou des paramètres supplémentaires en même temps que la sélection.

Quelles sont les choses que la technologie adoptée ne pourra pas faire et à quels points devons-nous faire attention ? Il est devenu important que toute l’équipe, y compris non seulement les ingénieurs mais aussi les artistes, comprenne ces choses. Au fur et à mesure que vous progresserez dans la compréhension au sein de votre équipe, vous parviendrez à un consensus sur ce qu’il ne faut pas faire.

Création d'un système 2D

"Brew Wai"Bien sûr, il s’agissait d’une « structure tridimensionnelle ». Le jeu utilise de nombreux éléments 3D, tels que l'escalade de murs, le vol à voile, de petits champs vides et des grottes. Pourtant, d’un point de vue plus large, il s’agissait d’un jeu créé avec des contraintes bidimensionnelles.

Donc,"Tiakine"Alors, comment c'était ? Lors du brainstorming des premiers stades de développement, nous avions déjà commencé à réfléchir à une expansion verticale du monde. La première chose que je voulais essayer était"Brew Waï"C’était quelque chose qui n’aurait pas pu être fait. De plus, comme il s’agissait d’un titre exclusif à la Nintendo Switch, il y avait une marge de croissance car il n’y avait aucune limitation matérielle.

Comment étendre à la 3D le traitement 2D réalisé dans les travaux précédents ? C'est ``Tierkin» est devenu un problème technique spécifique.

« Système de grottes » qui étend la représentation du monde à trois dimensions

"Brew Waï"Lors de la sélection de la technologie pour la production sur le terrain, nous avons adopté une méthode procédurale de dessin du sol (une méthode qui combine plusieurs données et processus) utilisant des « cartes de hauteur » (*).

*Heightmap : texture qui exprime les différences de hauteur dans une image en niveaux de gris, par exemple les zones blanches étant plus hautes et les zones noires plus basses. Même s’il s’agit d’une représentation bidimensionnelle, elle peut exprimer des différences de hauteur.


Le rendu est effectué en recouvrant une carte de hauteur avec des informations de hauteur avec un maillage de type grille (une collection de polygones qui forment la surface d'un objet avec des données telles que des sommets, des arêtes et des faces). Cela permet d'élever chaque sommet de la grille de la hauteur correspondante en temps réel pour exprimer les inégalités du terrain. Un autre avantage est que le nombre de polygones peut être ajusté dynamiquement depuis le programme.

Le LOD est également obtenu en ajustant le rendu du maillage du côté du programme. Même en dessinant un vaste monde, il était possible de distinguer les charges en divisant de manière appropriée la carte des hauteurs. En utilisant des cartes de hauteur, nous avons pu prendre en charge un dessin flexible.

Cependant, il est difficile d’exprimer des structures tridimensionnelles à l’aide de cartes de hauteur.

"Brew Wai"Dans la scène où une structure tridimensionnelle était souhaitée, un modèle 3D créé par l'artiste à l'aide de données de maillage a été placé séparément.

Donc,"Tiakine"Comment crée-t-on ce champ ? Même si nous pouvions utiliser les mécaniques du jeu précédent pour le monde de surface, nous avons dû repenser le streaming de données et le LOD pour le ciel et le sous-sol en 3D.

Premièrement, la « grotte » a des grillages sur les murs et le plafond. Afin de les dessiner de manière transparente, un nouveau système de terrain maillé, communément appelé « système de grottes », a été développé. Les données de sommet du maillage sont transformées en fonction du LOD, mais pour transformer les sommets entre les LOD, il est nécessaire d'associer les sommets entre les LOD.

Il semble qu'ils aient mis en œuvre leur propre réduction de polygones pour créer cette correspondance.
Au cours de la session, il a été expliqué que la réduction des polygones est mise en œuvre à l'aide d'un algorithme appelé Half-Edge Collapse.

De plus, en attribuant des polygones à des « morceaux » de données structurelles d'octree, nous pouvons contrôler les groupes de polygones qui sont lus en fonction de l'étape LOD. Dans ce cas, la position de calcul du polygone doit exister dans le fragment, mais si le polygone s'étend sur plusieurs fragments, en ayant une position distincte pour calculer le taux d'interpolation sur la surface du fragment, le morphing ne peut être effectué qu'au sein du fragment. Les calculs peuvent être confinés.

Le streaming de données est également basé sur des morceaux. Il s'agit d'un algorithme simple qui dessine une image détaillée si elle est proche de la caméra, et en dessine un morceau tel quel si elle se trouve à une certaine distance.

En utilisant le système de grottes ainsi réalisé, un vaste espace souterrain a également été créé. En examinant différentes manières de jouer dans cette cavité, nous sommes arrivés à la conclusion que s’il existait une connexion entre le vaste espace souterrain et la surface, le cycle de jeu et de découverte s’étendrait davantage.

En d’autres termes, lorsque vous découvrez quelque chose sur le sol, vous pouvez trouver quelque chose sous terre au même endroit, et inversement, en explorant le sous-sol, vous pouvez prédire ce qui se trouve à la surface, de sorte que le sol et le sous-sol se fournissent mutuellement des indices. que vous pouvez créer une relation.

Par conséquent, en utilisant réellement un système de grottes et en bouleversant le monde de surface, un monde souterrain a été créé. Depuis que nous avons obtenu une bonne réponse lors du test, nous avons mis en place des règles de génération qui reflètent les données du sol (topographie, végétation, etc.), ajouté des conceptions détaillées par l'artiste et ajouté de l'individualité grâce à l'intervention de nouveaux maillages.

Ce système de grottes pourrait également être utilisé pour créer des îles célestes. La différence entre une grotte et une île céleste réside uniquement dans le fait que la normale du polygone est vers l'intérieur ou vers l'extérieur, et ce n'était pas si difficile à gérer.

Le défi du sous-sol et « l’abandon » inattendu de l’île céleste

ainsi"Tiakine"Le monde est passé de la 2D de l'œuvre précédente à la 3D. Cependant, à peu près au même moment, le directeur de la programmation Takahiro Okuda s'inquiétait de la manière de charger ce monde. La route fait ici référence à des objets placés tels que des arbres et des falaises.

Travaux antérieurs

"Brew Wai"Ces emplacements ont également été chargés en 2D, tout comme la carte de hauteur. Les objets sont disposés sur une grille en fonction de la distance d'affichage bidimensionnelle. Par exemple, les grands bâtiments peuvent être placés dans une grille avec une grande distance de visualisation (grande taille), tandis que les petits objets qui n'ont pas besoin d'être vus de loin peuvent être placés dans une petite grille. Ces grilles se chevauchent.

Cependant, même si vous ne chargez pas, il peut y avoir des problèmes s'il n'y a pas de collision (jugement selon lequel les objets entrent en collision ou se repoussent). Il s'agit d'un cas où un autre personnage, etc., entre à la place de l'objet placé et reste bloqué lorsque l'objet placé est chargé. Par conséquent, pour les collisions de terrain, les données de collision du maillage sont désormais chargées indépendamment.

Fort de ces expériences,"Tiakine"Ils disent avoir retravaillé le système de chargement pour rendre les emplacements de chargement plus flexibles. Ce système permet des changements de placement flexibles en fonction du drapeau du jeu, il a donc été utilisé pour créer un effet où la topographie du village change au fur et à mesure que le jeu progresse.

De plus, dans les travaux précédents, il y avait un temps de chargement entre l'entrée dans le donjon,

"Tiakine"Nous voulions entrer de manière transparente dans un tel donjon, nous avons donc introduit un processus général qui peut être chargé dans une zone distincte.

Cependant, l’algorithme de chargement lui-même utilise tel quel le chargement 2D du travail précédent. Comment charger le monde souterrain et les îles célestes avec ce système de chargement est devenu un nouveau défi.

Tout d’abord, concernant le monde souterrain, il a été décidé dès le départ qu’il y aurait une distance suffisante entre la surface et le sous-sol. En d’autres termes, il n’y a aucune chance de voir à la fois la surface et le sous-sol. Par conséquent, plutôt que de charger le monde aérien et le monde souterrain en même temps, il est préférable de charger uniquement le monde aérien lorsque vous êtes au sol, et uniquement le monde souterrain lorsque vous êtes sous terre, pensait-il. pourrait profiter du monde. J'ai donc ajouté une fonctionnalité qui chargerait le monde souterrain lorsqu'il atteignait une certaine profondeur...

En descendant, je n'ai pas pu le charger à temps et l'écran s'est arrêté dans le trou. À ce stade, le monde souterrain était connecté au monde de la surface, et son « rôle » en tant que lieu d’accès direct depuis la surface avait été établi.

Il est très important que vous compreniez ce rôle.

"Tiakine"Nous accordons une grande importance au cycle de production et de confirmation, et exigeons un niveau minimum d'implémentation dans le jeu pour confirmer si quelque chose qui semble intéressant l'est réellement. Cependant, ce n’est pas non plus une bonne idée de le rendre trop détaillé, car il est possible qu’il doive être refait. On dit qu’une mise en œuvre minimale pour confirmer le rôle est extrêmement importante.

En ce qui concerne le rôle minimum du mécanisme qui pénètre dans le sous-sol, il n'y a aucun problème avec la spécification de sauter dans ce trou. Cependant, pour le commercialiser, il faut résoudre le problème du chargement. En visualisant le processus de chargement avec un outil de profilage, vous pouvez identifier les goulots d'étranglement qui prennent du temps, allouer le traitement aux moments vides lorsque le chargement n'est pas effectué ou reporter le chargement des données qui ne sont pas nécessaires immédiatement, mais ce n'est toujours pas suffisant.

Par conséquent, afin de réduire la quantité totale de données à charger, nous avons conçu un système qui ne charge pas les éléments situés dans des positions invisibles. Des valeurs appropriées pour la résolution de texture ont été dérivées pour chaque objet sur la base de l'union d'observations provenant d'emplacements où l'objet était visible. Il y avait encore des cas où cela ne suffisait pas, nous avons donc introduit un mécanisme qui précharge certains des fichiers nécessaires à l'approche du trou d'où sauter, et avons finalement obtenu un chargement transparent.

Lorsque le problème du chargement entre le monde souterrain et le monde de surface serait résolu, qu'arriverait-il au chargement de Sky Island ?

Lorsque les îles célestes ont été prototypes, certaines étaient suffisamment basses pour être atteintes depuis le sol, tandis que d'autres étaient beaucoup plus hautes. M. Okuda a consulté le concepteur sur le système nécessaire pour charger ces éléments, et le résultat a été qu'ils ont été laissés seuls.

Cependant, ce n’est pas parce que vous ne pouvez pas le mettre en œuvre que vous devez abandonner et le laisser tranquille. Il s’agit simplement d’une « stratégie de négligence active » et l’intention n’est pas de la mettre en œuvre même si elle pourrait l’être. C'est le résultat de l'idée selon laquelle procéder à la mise en œuvre à ce stade pourrait en fait imposer des restrictions sur Sky Island.

Implémenter une fonctionnalité signifie décider de quelque chose. Cependant, Sky Island en était encore au stade d’essais et d’erreurs. Nous avons pensé qu'il serait préférable de ne pas décider de son avenir maintenant, c'est pourquoi nous n'avons délibérément pas mis en place une charge exclusivement pour Sky Island.

Concernant la route de Sky Island, il a été décidé d'utiliser la même base 2D que l'ouvrage précédent. En contrepartie, il peut y avoir quelques erreurs de traitement ou bugs, mais tant qu'ils n'interfèrent pas avec la confirmation du rôle de Sky Island, cela peut être toléré puisqu'il est encore en cours de développement.

Grâce à ces opérations, le type d’îles célestes nécessaires a été réduit. Dans le même temps, du point de vue du design et de l’art, la disposition des îles célestes subira également des changements majeurs. En conséquence, il existe quelques grandes îles célestes liées à l'histoire principale et comportant de nombreux emplacements et gadgets, ainsi que quelques îles célestes plus petites destinées à servir de point de passage pour le voyage aérien. Vous devez découvrir comment y accéder. là en premier lieu, les rôles des îles célestes étaient divisés, comme les petites îles célestes avec les petites îles.

Après avoir confirmé que le joueur peut presque ignorer les îles célestes en marchant sur le sol, nous catégorisons les îles célestes en grandes îles célestes et petites îles célestes, avec une seule grande île céleste et une petite île céleste ayant développé un système capable de pré-développer. -charger plusieurs fichiers et les stocker en mémoire. Cette définition améliore grandement la manutention des charges.

Les perspectives macro et micro sont la clé du « Tarkin »

De cette façon,"Tiakine"Lors du développement du jeu, diverses technologies ont été créées pour représenter et charger de manière transparente les trois mondes. mais"Tiakine"Afin de réaliser un monde de Un cycle de fonctionnement était essentiel.

On peut dire que les efforts visant à faire fonctionner le cycle de production et de confirmation « rendent la production transparente ». Pour cette initiative, des efforts ont été déployés pour améliorer non seulement le processus mais également le flux de travail des outils.

Un exemple de ceci est une tentative de réduire à zéro autant que possible le temps nécessaire au développement et à la mise en œuvre sur la machine réelle dans le système de grottes. Ce système élimine le processus de conversion lui-même et permet une édition en temps réel, ce qui vous permet de vérifier les modifications immédiatement dans le jeu, en appliquant un mécanisme de streaming de données.

De plus, dans le flux normal, les données seraient peaufinées une fois que la conception des niveaux a été décidée, mais si des modifications sont apportées à la conception des niveaux, le polissage devra naturellement être refait, ce qui rendra l'achèvement encore loin.

Par conséquent, dans le système de grottes, nous avons construit une « décoration procédurale » dans le but de créer un flux de travail permettant aux travaux de retouche et de modification de se dérouler en même temps. En appliquant le traitement « Houdini » (*) lors de la conversion, les zones peu impliquées dans le jeu, comme les plafonds et les murs, sont automatiquement finies avec des conceptions détaillées, tandis que les zones comme le sol où se trouvent les lignes conductrices principales peuvent être ajustées pour le level design. Nous avons créé un mécanisme qui maintient la forme afin de ne pas détruire l’intention originale.

*Houdini : logiciel de production 3DCG développé par Side Effects Software of Canada et largement utilisé dans la production cinématographique. En plus de pouvoir exécuter le processus de création 3DCG de manière cohérente, il est également excellent pour traiter les effets irréguliers tels que les flammes et la fumée.

De plus, les décorations procédurales ont été initialement mises en œuvre à Houdini par des ingénieurs, elles étaient donc compatibles avec le système de grottes. Les essais et erreurs du flux de travail se sont poursuivis à mesure que les artistes trouvaient des pièces avec lesquelles ils voulaient expérimenter et des pièces que les ingénieurs voulaient laisser aux artistes. Un système a été mis en place qui a permis aux deux parties de comprendre les domaines d'expertise de chacun. répartir les rôles de manière optimale.

en premier lieu"Tiakine"est un titre attrayant qui fait passer dynamiquement les perspectives du ciel au sol et du sol au sous-sol. Pendant que vous jouez, le monde du jeu ne fait plus qu'un en basculant à plusieurs reprises entre les perspectives micro et macro, par exemple en vous concentrant uniquement sur l'objet devant vous ou en regardant le monde à vol d'oiseau.

Dans le contenu de cette conférence, il y a eu de nombreux changements de perspective, comme la prise en compte de l'unité de temps longue du cycle de production, tout en pensant également à l'optimisation des temps de chargement en millisecondes. L'ingénierie a une forte image de concentration sur le problème à résoudre, mais lorsque vous regardez la situation dans son ensemble, vous pouvez comprendre si la mise en œuvre est vraiment nécessaire et quelle est l'essence du problème.

Faire des allers-retours entre les perspectives macro et micro est"Tiakine"La conférence s'est terminée par les mots de M. Doda selon lesquels cela était nécessaire dans divers types d'ingénierie et était nécessaire pour une mise en œuvre transparente dans un vaste domaine.

[Mise à jour le 5 septembre 2024, 19h00] Certains contenus ont été révisés pour correspondre à l'objectif de la conférence.