Approfondissement : Génération du Monde
Ce blog post officiel examine plus en profondeur le système de génération du monde d’Hytale – et plus précisément les différentes techniques utilisées pour créer, et générer de manière procédurale, de fantastiques paysages dans chacun des zones du mode aventure. Ce sujet a déjà été introduit en Janvier 2019. Il est conseillé d’y avoir jeté un œil car ici l’équipe d’Hytale approfondi davantage dans les détails en montrant comment les moddeurs pourront personnaliser leur propre génération de monde.
De l’aléatoire et du volume
Étape 1 : partir de l’aléatoire
Dans le cas de leurs propres systèmes de générations procédurales, une carte de bruit (ou ‘champ de bruit’ : Noisemap) est un ensemble de nombres aléatoires qui peuvent être combinés avec une variété de fonctions pour supporter plusieurs types de générations. L’équipe d’Hytale utilise ces cartes de bruit pour de nombreux aspects du système de génération, y compris tous les systèmes liés au paysage détaillés par la suite. L’une des plus évidentes utilisations concerne la formation des zones elles-mêmes.
L’image qui suit sort d’un simple outil de visualisation. Elle donne un aperçu du résultat donné par la combinaison de cartes de bruit avec une autre fonctionnalité importante de la génération de paysages : l’interprétation du champ de hauteur. Dans ce cas, les environnements simulés sont les plateaux rocheux de la Zone 2.
Étape 2 : ajuster la hauteur
L’interprétation du champ de hauteur (Heightmap) un ensemble de nombres supplémentaires permettant aux développeurs d’établir la hauteur ou la profondeur de certaines caractéristiques du champ de bruit sur le terrain généré. On peut alors, par exemple, sur un modèle d’une carte de bruit d’un cours d’eau, ajuster les seuils de hauteur pour produire de spectaculaires canyons (cf. vidéo qui suit).
« Nos artistes techniques apprennent la composition de carte de bruit en tant que savoir-faire », explique Slikey, programmeur concernant la génération. « Ils disposent d’une large palette de différents types de bruit et de fonctionnalités pour les combiner. Ça prend du temps pour apprendre à équilibrer performances, design et complexité – nous découvrons constamment de nouvelles façons de combiner les cartes de bruit pour générer des terrains uniques ou pour placer des préfabriqués de manière inattendue. » Une fois les configurations faites, cartes de bruit et seuils d’un biome, ces règles sont implémentées au jeu lui-même.
Ce clip montre de multiples cartes de bruit ajoutées l’une après l’autre à un paysage, en commençant par un paysage par défaut, puis en introduisant les règles pour les biomes rivière et montagne de la Zone 2. La complexité augmentée par graduation reste juste une illustration : en réalité, une fois que les cartes de bruit et les seuils d’une zone ont été établis, le paysage est généré d’un seul coup.
Donner une identité à la génération : couches, couvertures et préfabriqués
Étape 3 : les couches (typiques de certains blocs)
À ce stade de la génération, on a un paysage avec beaucoup de blocs et quelques caractéristiques majeures comme des rivières, montagnes et rivages. Le processus qui donne aux environnements leur personnalité se déroule en plusieurs étapes. Chacune ayant ses propres processus de génération procédurale. « Nous commençons par les ‘couches’. Il s’agit d’une autre type de carte de bruit qui est utilisé pour spécifier, non seulement la profondeur de certains types de blocs dans le terrain, mais aussi les types de blocs qui apparaîtront à la surface (cf. illustration n°2). »
Étape 4 : recouvrir !
Le terme ‘couverture’ se réfère aux caractéristiques environnementales secondaires comme l’herbe, le feuillage, les champignons, les cristaux, etc. En configurant une couverture végétale pour une zone donnée, il est possible d’indiquer au système de génération quels types de plantes doivent apparaître et sur quelles couches. Par exemple, on peut établir que de touffus arbustes doivent uniquement apparaître sur les couches herbeuses, alors que la mousse peut apparaître sur les surfaces rocheuses du sous-sol.
Étape 5 : donner une identité
Les préfabriqués apportent la touche finale et sont souvent ce qui donne aux environnements leur propre identité. Les préfabriqués sont des arrangements de blocs, créés par les artistes techniques, répartis dans tout l’environnement par le système de génération. Les préfabriqués accessoires comme les arbres sont fréquemment rencontrés par le joueur et sont répartis comme tout autre type de couverture du sol.
Le système de génération de préfabriqués prend également en charge de larges structures et points d’intérêt, comme expliqué l’an dernier. L’équipe d’Hytale en a construit des milliers pour la génération procédurale du mode aventure. Et les moddeurs auront la liberté de les utiliser ou de construire les leurs lorsqu’ils personnaliseront leur monde.
Combiner les différents types de génération
Les préfabriqués sont configurés séparément afin d’assurer que leur apparence dans le monde soit crédible et facilement distinguables. Les zones où de plus grands préfabriqués peuvent apparaître sont cartographiées à l’aide d’un autre type de carte de bruit : cf. illustration n°5. C’est un exemple de bruit de Voronoï qui crée des motifs ressemblant à des cellules. Pour Hytale, ces « cellules » sont utilisées pour savoir où les larges préfabriqués peuvent ou ne peuvent pas se produire.
Pris dans leur ensemble, les couches [étape 1], couvertures [étape 2] et préfabriqués [étape 3] aident à créer des environnements qui combinent le dynamisme de la génération procédurale avec la recherche de finalité découlant de la présence de caractéristiques environnementales et de bâtiments conçus à la main.
« Worldgen est un système étonnant », annonce l’artiste technique Amber. « Il nous apporte tellement de maîtrise et nous offre la possibilité d’être incroyablement créatif avec le système. Nous avons souvent créé des paysages pour ensuite les montrer à Slikey, et il nous disait : ‘Wow, je ne savais que vous pouviez faire ça !’ »
Worldgen : l’outil du terraformeur qui garde encore ses secrets
D’autres aspects de Worldgen ont été gardés sous silence – en particulier les systèmes de grottes, de donjons et les manières dont se croisent les zones les uns sur les zones. Ce sont des sujets très importants en soi. L’équipe d’Hytale prévoit donc de les traiter séparément dans une nouveau blog post sur l’approfondissement des systèmes de générations d’Hytale.
« Nous espérons que cet article vous aura permis d’un peu mieux comprend comment le monde d’Hytale est créé. Tous les systèmes qui ont été décrits seront accessibles aux moddeurs grâce à des fichiers de configuration largement personnalisables. En combinant le système de génération de monde à Hytale Model Maker, vous serez en mesure de générer des environnements uniques qui vous sont propres. » Hytale.com