Point sur Hytale : Juin 2020

Hytale 30 juin, 2020

En cette fin de mois de juin, l'équipe d'Hytale a décidé de faire le point sur le système de génération de monde selon les différents biomes que le joueur pourra rencontrer durant son aventure. Déjà abordé dans un précédent post, le système de génération sera finalement beaucoup plus développé et sera notamment intégralement personnalisable selon les goûts et les envies de chacun.


INTERPRÉTATION DES "NOISEMAPS" ET DES CHAMPS DE HAUTEUR

Pour mettre en place leur système de génération, Hytale se base sur ce qu'ils appellent une "noisemap", c'est à dire une série de nombres aléatoires combinée à plusieurs fonctions, donnant ainsi naissance à une génération unique et originale.

Ce système de "noisemap" est utilisé pour de nombreuses fonctions dans Hytale, notamment pour la création des paysages. L'utilisation la plus impressionnante de ce système reste cependant la création des différentes zones du monde.

L'image ci-dessus provient d'un simple outil de prévisualisation et met bien en valeur cette fameuse combinaison de nombres aléatoires avec une des plus importantes fonctions de la génération de monde : l'interprétation des champs de hauteur (heigtmap). Dans l'exemple ci-dessus, on peut donc voir un exemple de génération des plateaux rocheux de la Zone 2.

L'interprétation des champs de hauteur implique des séries de nombres supplémentaires qui permettent d'augmenter ou de diminuer certaines caractéristiques de la "noisemap" qui seront destinées à apparaître sur le monde généré. En modifiant les seuils d'interprétations des champs de hauteurs, il sera donc possible de modifier, par exemple, une "noisemap" d'un simple cours d'eau en un gigantesque canyon.

"Nos artistes techniques apprennent la composition des "noisemaps" comme une simple recette" nous assure Slikey, développeur du système de génération de monde. "Ils ont à leur disposition un véritable inventaire de "noise" et d'opérations qu'ils peuvent ensuite combiner comme ils le souhaitent. Cela prend du temps d'apprendre à équilibrer la complexité, la performance et le design, et nous trouvons toujours de nouveaux moyens pour combiner les "noisemaps" dans l'unique but de générer des mondes uniques ou de disposer des préfabriqués de la manière la plus inattendue qui soit."

La vidéo ci-dessus nous montre l'ajout de plusieurs "noisemaps" l'une après l'autre à un simple paysage sans relief : on peut donc voir que chaque Zone (ici la Zone 2) aura des évolutions de relief totalement différentes et originales. Evidemment, une fois le jeu lancé, le relief de chaque biome sera généré d'un seul coup : la vidéo est simplement là pour illustrer les propos des développeurs.

COUCHES, COUVERTURES ET PRÉFABRIQUÉS

L'image ci-dessous nous montre un simple paysage composé de plusieurs blocs et de quelques ajouts majeurs comme des rivières, des montagnes et un rivage. Il faut savoir que le processus d’aménagement d'un environnement se déroule en plusieurs étapes, chacune fonctionnant indépendamment des autres.

La première étape consiste à intégrer les "couches" (layers), un autre type de "noisemap", utilisées pour déterminer la profondeur de certains types de blocs du terrain, mais aussi pour choisir les blocs qui apparaîtront à la surface. La capture d'écran ci-dessus nous montre les différentes couches d'un paysage de la Zone 3 (avec des plantes et de la végétation retirés volontairement pour faciliter la vision de toutes les couches présentes sur le paysage).

La seconde étape est celle des "couvertures" (covers), qui inclue tous les détails secondaires de l'environnement, comme l'herbe, le feuillage, les champignons, les cristaux, etc. En configurant une couverture pour une zone précise, les développeurs peuvent donc facilement déterminer sur quelles couches doivent apparaître certains types de plantes. Par exemple, il est possible de faire apparaître les buissons touffues uniquement sur de l'herbe, ou faire en sorte que la mousse ne se répande que dans des surfaces souterraines.

Enfin, la troisième et dernière étape consiste à intégrer les préfabriqués pour donner une véritable identité à chaque zone. Les préfabriqués sont des combinaisons de blocs conçues par les artistes techniques, et sont directement intégrés aléatoirement dans le jeu par le système de génération de monde.

Les préfabriqués accidentels comme les arbres, sont fréquemment rencontrés par le joueur et sont disposés un peu partout dans le monde comme d'autres types de "couvre-sol" (fleurs, buissons, etc).

La vidéo ci-dessous nous montre l'exemple d'un simple paysage sur lequel les trois étapes du processus d’aménagement ont été intégrés (couches, couvertures et préfabriqués) :

Le système des préfabriqués supporte également des structures et des points d'intérêts plus importants, comme cela avait été expliqué dans un article de mars 2019. Des milliers de préfabriqués ont déjà été conçus pour le mode aventure, mais il sera tout à fait possible pour les moddeurs de les modifier ou même de créer leurs propres préfabriqués.

Les préfabriqués sont conçus de façon indépendante afin de garantir que leur apparence dans le monde soit crédible et originale. Les zones où les préfabriqués plus importants peuvent apparaître sont cartographiées à l'aide d'un autre type de "noisemap" :

L'image ci-dessous est un exemple de "Voronoi noise", utilisé pour créer des motifs sous forme de cellules. Hytale utilise ces "cellules" pour déterminer où les préfabriqués peuvent et ne peuvent pas apparaître. Sur l'image ci-dessus, les taches violettes représentent les zones où un grand préfabriqué pourrait être rencontré. L'ensemble de ces tâches représente 20% de l'espace généré (cette donnée pourra potentiellement être réduite ou augmentée par l'équipe d'Hytale).

Lorsqu'ils fonctionnent ensemble, les couches, les couvertures et les préfabriqués aident à créer des environnements logiques et réalistes aidant à l’immersion totale du joueur.

"Notre système de génération de monde est incroyable", déclare Amber, artiste technique chez Hytale. "Cela nous donne tellement de contrôle et de possibilités d'être encore plus créatif. Nous avons créé énormément de paysages, et lorsque nous les avons montré à Slikey (développeur du système de génération de monde), il a dit 'Wow, je ne savais même pas qu'on pouvait faire ça !'".

D'autres aspects de la génération de monde seront dévoilés prochainement, comme les systèmes de grottes, de donjons et la façon dont les zones se croisent et interagissent entre elles.

Tous les systèmes décrits précédemment seront rendus accessibles aux moddeurs via des fichiers de configuration complètement personnalisables. En combinant les outils de création d'Hytale Model Maker, les outils de création de blocs et le système de génération de monde, il sera donc possible de générer nos propres environnements.

Voici un exemple de ce qu'un simple joueur pourra créer avec tous les systèmes décrits précédemment :

Super ! Vous vous êtes inscrit avec succès.
Super ! Effectuez le paiement pour obtenir l'accès complet.
Bon retour parmi nous ! Vous vous êtes connecté avec succès.
Parfait ! Votre compte est entièrement activé, vous avez désormais accès à tout le contenu.