Unity Terrain Engine Tools

Ce que vous allez créer

Unity est un moteur de jeu multi-plateformes développé par Unity Technologies. Il est utilisé pour créer des jeux vidéo et des applications pour une multitude d'appareils (PC, consoles, appareils mobiles et même des sites Web). Les principaux avantages de Unity sont sa robustesse et sa portabilité. Unity cible plusieurs API connues telles que Direct3D, OpenGL, OpenGL ES et le récent Vulkan..

En raison des caractéristiques susmentionnées, Unity est devenu de plus en plus populaire parmi les maisons de développement de logiciels AAA et les programmeurs de jeux en herbe..

Unity prend en charge plusieurs technologies et composants. L'un des composants clés est le système de moteur de terrain. Le système de terrain de Unity vous permet de créer de vastes paysages pour vos jeux ou vos applications. Vous pouvez utiliser une sélection d'outils disponibles pour créer des terrains facilement et rapidement.

Ce didacticiel expliquera le fonctionnement des outils de moteur de terrain et leur utilisation pour créer des environnements de terrain vastes et riches..

Conditions préalables

Tout d’abord, assurez-vous de disposer de la dernière version de Unity. Dans ce tutoriel, nous utilisons la version 5.6. Assurez-vous que vous utilisez la dernière version de Unity. sinon, vous pouvez trouver de petites différences à la suite du tutoriel et de l’utilisation des liaisons physiques..

Pour ce tutoriel, vous n’utiliserez aucun fichier de démarrage. L'objectif est de créer un nouveau projet et d'effectuer le tutoriel à partir de là..

Les outils de terrain

La première étape consiste à créer un nouveau projet Unity. Ajoutez maintenant une nouvelle scène (Fichier> Nouvelle scène). La nouvelle scène a été créée avec deux objets de jeu, le Caméra principale et un Lumière directionnelle (Unity 5 ajoutera automatiquement un skybox à la scène).

Maintenant, pour ajouter un objet de jeu de terrain, allez à la GameObject menu et sélectionnez Objet 3D> Terrain. Cela va ajouter un plan plat (appelé Terrain) dans votre scène. Ce plan est le maillage que nous allons sculpter afin de créer votre terrain plat.

Si vous vérifiez votre Les atouts répertoire (partie inférieure de Unity), vous verrez qu’un Nouveau terrain le fichier a été créé.

Sélectionnez le terrain et regardez le Inspecteur languette. Vous verrez que le terrain a trois composantes: Transformer, la Terrain script, et le Collisionneur de terrain composant.

Le composant de terrain vous fournit les outils nécessaires pour modifier votre terrain. Tous les outils de la barre d’outils, à l’exception de l’outil de placement de l’arbre et du panneau de configuration, fournissent un ensemble de "pinceaux" et de paramètres de taille et d’opacité, tout comme les outils de peinture d’un éditeur d’image normal. Cela vous permet de sculpter votre terrain de la même manière qu’un outil de peinture..

Si vous sélectionnez un pinceau sous le Terrain Composant et la souris sur le terrain, vous verrez une zone bleue projetée sur le terrain. Cela vous permet de connaître la zone du terrain que votre brosse affectera..

Comme vous l'avez peut-être déjà compris, le Terrain est assez grand. Pour naviguer à travers le Scène, vous pouvez utiliser la souris et le clavier. À l'intérieur de Scène onglet, appuyez et maintenez votre Bouton droit de la souris (le curseur doit changer pour un oeil).

Tout en maintenant le bouton de la souris:

  • Vous pouvez changer l'angle de votre vue en déplaçant la souris.
  • Utilisez le W, S, A, D touches pour se déplacer dans la scène 3D.

Avant de commencer à explorer les outils de terrain, jetons un coup d’œil à la Terrain Propriétés. Le dernier bouton du composant Terrain (à l’intérieur du Inspecteur) vous montrera les paramètres de base du terrain.

Les propriétés sont divisées en sections:

  • Terrain de base
  • Objets Arbre et Détails
  • Réglages du vent pour l'herbe
  • Résolution
  • Heightmap

À l'intérieur de la première section Terrain de base, vous trouverez plusieurs propriétés et paramètres.

le Dessiner Cette option active ou désactive le rendu du terrain. le Erreur de pixel représente la valeur de précision de la cartographie entre les cartes de terrain (par exemple, les textures, les cartes altimétriques et le terrain généré). Des valeurs plus élevées représentent une précision moindre, et des valeurs plus faibles entraîneront une surcharge de rendu. Il est de votre responsabilité d’équilibrer cette valeur afin de créer un environnement agréable et riche..

le Carte de base dist. est la distance maximale à laquelle les textures de terrain seront affichées en pleine résolution. Vous pouvez activer ou désactiver les ombres en sélectionnant Projette des ombres.

Ensuite, nous avons Matériel. Ici, vous définissez le matériau qui sera utilisé pour rendre le terrain. Cela affectera la façon dont les canaux de couleur d'une texture de terrain sont interprétés. Vous pouvez sélectionner:

  • Construit en standard représente le matériau de rendu basé sur la physique introduit dans Unity 5. Si vous sélectionnez cette option, vous pouvez utiliser pour chaque couche de splat une texture pour l'albédo et le lissé, une texture pour la normale et une valeur scalaire pour modifier le caractère métallisé. Gardez à l'esprit que si "Écraser la douceur"est cochée, au lieu de lire les cartes de texture, le lissé de tout le terrain ne sera contrôlé que par le Douceur valeur.
  • Construit en héritage Diffuse représente le matériel de terrain intégré hérité des versions précédentes de Unity (Unity 4 et versions antérieures). Il utilise un modèle d'éclairage Lambert et prend en charge une carte en option normale.
  • Construit dans l'héritage spéculaire utilise le modèle d'éclairage Blinn-Phong (veuillez consulter ce didacticiel précédent sur Unity 5 Lightning) et prend en charge, en option, les cartes normales. Cette option vous permet également de spécifier la couleur globale et la brillance spéculaires du terrain..
  • Douane Cette option utilise un matériau personnalisé de votre choix pour rendre le terrain. Ce matériau doit être un shader orienté vers le rendu du terrain. C’est une option que je ne recommande qu’aux utilisateurs avancés. Cependant, si vous voulez l'essayer, jetez un coup d'œil au code source de certains des shaders de terrain intégrés et apportez des modifications dessus..

Vous pouvez également définir Sondes à réflexion pour certains matériaux, mais ils ne seront utilisés que lorsque vous utilisez un matériau standard intégré ou un matériau personnalisé prenant en charge le rendu par réflexion. Les options pour les sondes de réflexion sont:

  • De: Les sondes de réflexion sont désactivées et seule la skybox sera utilisée pour la réflexion.
  • Sondes de mélange: Les sondes de réflexion sont activées. Le mélange ne se produit qu'entre sondes. La réflexion par défaut sera utilisée s'il n'y a pas de sonde de réflexion à proximité, mais il n'y aura pas de fusion entre la réflexion par défaut et la sonde.
  • Sondes De Mélange Et Skybox: Les sondes de réflexion sont activées. Le mélange se produit entre sondes ou sondes et réflexion par défaut.
  • Simple: Les sondes de réflexion sont activées, mais aucune fusion ne se produira entre les sondes lorsque deux volumes se chevauchent.

Enfin, le dernier paramètre de cette section est Épaisseur. Cette valeur spécifie l'étendue du volume de collision de terrain sur l'axe Y négatif. Les objets sont considérés comme entrant en collision avec le terrain depuis la surface jusqu'à une profondeur égale à l'épaisseur. Cela aide à empêcher les objets en mouvement à grande vitesse de pénétrer dans le terrain sans utiliser la détection coûteuse en continu des collisions.

La prochaine section de paramètres est Objets Arbre et Détails.

La première option est Dessiner. Ici, vous pouvez activer ou désactiver le tirage au sort des détails. En gros, cela indique au moteur si vous voulez que les arbres et l'herbe soient dessinés ou non. Ensuite, vous avez Sondes de cuisson pour les arbres. Si vous activez cette option, Unity créera des sondes lumineuses à la position de chaque arbre. Les sondes seront ensuite appliquées au rendu des arbres. Si vous désactivez cette option, les arbres seront toujours affectés par les sondes de groupe de lumière. Notez que cette option est uniquement disponible pour les arbres ayant des sondes de lumière activées sur leurs préfabriqués..

le Distance de détail est la distance de la caméra au delà de laquelle les détails seront éliminés. Densité de détail représentele nombre d'objets de détail dans une unité de surface donnée. Distance d'arbre représente la distance de la caméra au-delà de laquelle les arbres seront abattus. le Début de panneau d'affichage est la distance entre la caméra et les objets d'arborescence 3D qui seront remplacés par des images de panneau d'affichage. le Fondu Longueur représente la distance sur laquelle les arbres feront la transition entre les objets 3D et les panneaux d'affichage. Finalement, le Max Mesh Trees est le nombre maximum d'arbres visibles qui seront représentés par des maillages 3D solides.

Passant, vous verrez le Réglages du vent pour l'herbe section.

La vitesse définit la vitesse du vent quand il souffle l'herbe. le Taille représente la taille de l'ondulation sur les zones herbeuses. Pliant vous permet de définirle degré de pliage des objets d'herbe par le vent. Teinte d'herbe vous permet de sélectionner la teinte générale appliquée aux objets en herbe.

À l'intérieur de Résolution section, vous trouverez plusieurs propriétés de résolution, à savoir la Largeur du terrain, Longueur, et la taille. Tous les trois sont très explicites de leur signification. le Heightmap Résolution est la résolution en pixels de la carte de hauteur du terrain. Cela devrait être une puissance de 2 plus 1, par exemple, 513, où 512 est une puissance de 2, et vous ajoutez 1.

Résolution de détail vous permet de définir la résolution de la carte. Des résolutions plus élevées vous donneront des zones de gazon plus petites et plus détaillées. le Résolution détaillée par patch définit la longueur et la largeur du carré de patchs restitués lors d’un appel de tirage au sort. le Contrôle de la résolution de la texture est la résolution de la carte de splat qui contrôle le mélange des différentes textures de terrain. Finalement, le Résolution de la texture de base définit la résolution de la texture composite utilisée sur le terrain vue d'une distance supérieure à la distance de la carte de base.

La dernière section est Heightmap. Ici, vous pouvez importer un fichier raw heightmap ou exporter votre terrain actuel dans un fichier raw heightmap. Cela peut être très utile si vous souhaitez utiliser un logiciel tiers externe pour interagir avec votre application ou votre jeu..

Outils de hauteur

Avant de passer aux outils de hauteur, n'oubliez pas que vous devez d'abord définir les paramètres de résolution. Sinon, si vous essayez de les changer plus tard, toute la sculpture du terrain sera perdue.

Les trois premiers outils sur le Inspecteur de terrain barre d'outils sont les outils de hauteur. Ces outils sont utilisés pour peindre les changements de hauteur sur le terrain.

Ils fournissent un ensemble de "pinceaux" avec des paramètres pour Taille de la brosse et Opacité; ces outils ressemblent beaucoup aux outils de peinture de n’importe quel éditeur d’image. Cela vous permet de peindre des détails sur le terrain, comme si vous peigniez une image.

Si vous déplacez votre curseur sur le Scène onglet, vous verrez une zone bleue projetée sur le terrain. Cela vous permet de connaître la zone du terrain que votre brosse affectera..

Le premier outil est Hauteur de montée / basse. Lorsque vous peignez avec cet outil, la hauteur du terrain augmente à mesure que vous passez la souris dessus. Si vous maintenez la souris dans une zone particulière, la hauteur s’accumulera. Un tel effet peut être visualisé dans l'image suivante.

Pour abaisser le terrain, maintenez simplement la Décalage touche en peignant avec l'outil, ce qui réduira la hauteur de votre terrain.

Le deuxième outil sur l’éditeur de terrain est Hauteur de peinture. Cet outil est utilisé pour définir une hauteur spécifique pour une zone du terrain..

Cela fonctionne de la même manière que le Relever / Abaisser outil, mais il a une propriété supplémentaire pour définir la cible la taille. Vous pouvez sélectionner le désiré la taille en changeant la valeur de la la taille paramètre. le Aplatir bouton à côté de la propriété de hauteur nivellera tout le terrain à la choisie la taille.

Enfin, le troisième outil est Hauteur lisse. Cet outil n'augmentera ni ne diminuera considérablement la hauteur du terrain; au lieu de cela, cela adoucira le paysage et réduira l'apparence de changements brusques. Cet outil est particulièrement utile lorsque vous avez peint les détails à l'aide de l'un des pinceaux les plus bruyants, car ces pinceaux ont tendance à créer des roches pointues et déchiquetées dans le paysage. Vous pouvez utiliser cet outil pour les adoucir..

Il est maintenant temps de prendre un peu de temps et de créer votre propre terrain sculpté. Essayez d’utiliser les trois outils susmentionnés pour créer un beau terrain de montagne.

Outil de texture de peinture

Avec le terrain sculpté, il est maintenant temps de le texturer.

Avant de poursuivre, vous devez importer les actifs d’environnement disponibles avec Unity 5. Pour ce faire, sélectionnez Biens> Package d'importation, et sélectionnez Environnement. Cliquez sur Importation importer tous les actifs environnementaux.

Unity vous permet de peindre vos terrains avec des textures. Vous pouvez peindre votre terrain avec différentes textures dans différentes zones. Par exemple, vous pouvez avoir une texture pour la roche, une autre pour le sable et une autre pour l'herbe. Les textures peuvent être appliquées avec une transparence différente, ce qui signifie que vous pouvez effectuer des transitions en douceur entre deux textures. Pour obtenir les meilleurs résultats, vous devez peindre votre terrain avec des textures homogènes..

Comme vous l'avez peut-être remarqué sur le Inspecteur onglet, le Texture de peinture Cet outil a plusieurs brosses et vous permet de changer Taille de la brosse, la Opacité, et le Force de la cible.

La première fois que vous utilisez la peinture Outil de texture, il n'y aura pas de textures à choisir. La première chose à faire est d’ajouter une nouvelle texture à votre palette. Pour ce faire, cliquez sur le bouton Editer les textures bouton et sélectionnez Ajouter une texture. Une nouvelle fenêtre apparaîtra.

Comme vous pouvez le voir, sur cette fenêtre, vous pouvez Sélectionner la texture que vous voulez utiliser et sa carte normale, si vous en avez une. Cliquez sur le carré sous texture et sélectionnez votre texture. Une fenêtre s'ouvrira pour vous permettre de sélectionner la texture. Sélectionnez le SandAlbedo texture et clic Ajouter.

Votre terrain devrait maintenant avoir un aspect de sable. Notez que vous pouvez toujours le modifier avec l'option de modification de la texture ou le supprimer.. 

La première texture que vous créez doit toujours être la texture de base du terrain. La liste complète des textures utilisées dans cet exemple est la suivante:

  1. SandAlbedo
  2. GrassHillAlbedo
  3. GrassRockAlbedo
  4. MudRockyAlbedo
  5. CliffAlbedo

Tous font partie des actifs environnementaux importés et se retrouvent de la même manière que le SandAbedo texture. Allez-y et importez-les tous.

Lorsque vous avez importé toutes les textures, il est maintenant temps de texturer votre terrain comme vous le souhaitez. Sélectionnez une texture et peignez l'environnement souhaité. Voici un exemple de carte texturée.

Lorsque vous êtes satisfait du résultat, passez à la section suivante..

Outil de peinture

Maintenant que votre terrain est peint, il est temps d'y ajouter des arbres. Unity 3D vous permet de placer des arbres sur votre terrain de la même manière que vous avez peint les textures. En utilisant les paramètres de billboard pour les arbres distants, Unity maintient de bonnes performances de rendu, vous permettant ainsi d'avoir des forêts denses avec des milliers d'arbres..

Pour commencer à peindre des arbres, sélectionnez votre Terrain du Hiérarchie onglet, et sur le Inspecteur onglet, sélectionnez le cinquième bouton.

Semblable aux textures, vous devez également ajouter les arbres. Cliquer sur Éditer des arbres> Ajouter un arbre.

Unity vous demandera le préfabriqué de l’arbre que vous souhaitez utiliser. Cliquez sur le petit cercle et une autre fenêtre apparaîtra. Cette fois, il vous montrera tous les préfabriqués que vous avez dans votre projet.

Sélectionnez le Broadleaf_desktop arbre préfabriqué et cliquez Ajouter. Ceci fermera la fenêtre préfabriquée et ajoutera l’arborescence sélectionnée au projet..

Vous pouvez maintenant sélectionner le palmier pour le peindre sur votre terrain.

Sous le Réglages, vous trouverez plusieurs paramètres que vous pouvez ajuster lorsque vous placez des arbres dans votre scène. Taille de la brosse définit la zone à peindre, tandis que Densité des arbres définit le nombre d'arbres que vous aurez dans la zone peinte. Des valeurs élevées signifieront plus d'arbres. Hauteur de l'arbre vous permettra de définir comment la hauteur change. Vous pouvez le définir sur aléatoire et utiliser un intervalle de valeurs, ou vous pouvez définir une valeur spécifique. Vous pouvez Verrouiller la largeur à la hauteur des arbres, afin de leur donner le même rapport d'aspect. Vous pouvez également randomiser l’orientation de la rotation de l’arbre en utilisant le Rotation aléatoire des arbres option. En outre, la rotation des arbres peut être définie sur aléatoire.

À l'intérieur de Éclairage section vous pouvez définir comment les lightmaps sont générés pour vos arbres.

Pour peindre les arbres sur le terrain, déplacez la souris dans la vue de la scène. La zone bleue représente le pinceau. Avec un type d’arbre sélectionné, appuyez sur le bouton souris gauche bouton sur le terrain et commencer à créer des arbres.

Pour effacer des arbres d’une certaine zone, maintenez Décalage et utiliser le bouton gauche de la souris. Cela effacera tous les arbres de la zone de broussailles. Si vous voulez juste effacer un certain type d’arbre, maintenez Contrôle au lieu de Shift. Cela effacera uniquement le type d'arbre sélectionné.

Vous pouvez toujours modifier ou supprimer un type d'arbre en le sélectionnant et en cliquant sur le bouton d'édition. Pour modifier un arbre, cliquez sur Éditer, et pour le supprimer, cliquez sur Supprimer.

Enfin, vous remarquerez que dans le Collisionneur de terrain composant, vous avez un champ nommé Activer les colliseurs d'arbres. En sélectionnant cette option, vous activez les collisions entre d'autres objets du jeu et les arbres..

Si vous ne voulez pas peindre les arbres manuellement, vous pouvez utiliser le Mass Place Arbres bouton. Si vous cliquez ici, une nouvelle fenêtre apparaîtra. Unity vous demandera alors de créer un certain nombre d’arbres. Met le Nombre d'arbres et cliquez sur Endroit. Unity placera alors les arbres au hasard sur votre terrain.

La prochaine étape consiste à être créatif et à peupler votre terrain d'arbres. Afin de créer différents arbres, vous pouvez également ajouter de nouveaux arbres comme le Palm_Desktop, Broadleaf_Mobile et Conifer_Desktop. Pour cela, utilisez l'option Éditer des arbres sous le Des arbres menu (à l'intérieur Inspecteur).

Vous pouvez créer quelque chose comme l'image suivante (ou quelque chose de complètement différent).

Lorsque vous êtes prêt, vous pouvez passer à l'étape suivante.

Outil de détails de peinture

L'unité permet aux terrains d'avoir des touffes d'herbe et d'autres petits objets, tels que des roches, couvrant sa surface. L'herbe est rendue à l'aide d'images 2D, tandis que les autres objets sont généralement des mailles standard..

Pour ajouter des détails au terrain, sélectionnez votre objet terrain dans la hiérarchie. À l'intérieur de Inspecteur onglet, cliquez sur le sixième bouton, celui avec les fleurs.

Comme vous pouvez le voir, vous avez maintenant une interface similaire à la Outils de hauteur. Ici, vous avez également un ensemble de pinceaux que vous pouvez choisir afin de peindre une liste de détails.

Puisque vous n'avez pas sélectionné de détails d'objet, ajoutons-les en cliquant sur Modifier les détails> Ajouter une texture d'herbe.

Cela ouvrira une fenêtre dans laquelle vous pourrez définir plusieurs propriétés pour votre gazon.. Texture de détail vous permet de définir la texture que vous utiliserez pour votre herbe. Vous pouvez également définir plusieurs propriétés comme Largeur maximale, Largeur Min., Hauteur maximumHauteur min., Propagation du bruit, Couleur saine, Couleur sèche, et Panneau d'affichage. Toutes ces propriétés définiront à quoi ressemblera votre gazon.

Pour ce tutoriel, vous pouvez laisser les options par défaut ou les modifier à votre guise.

Cliquez sur le cercle devant le Texture de détail champ. Cela ouvrira une nouvelle fenêtre. Rechercher le HerbeFrond01AlbedoAlpha, sélectionnez-le et cliquez sur Ajouter.

Comme pour les arbres, vous pouvez utiliser plusieurs pinceaux pour peindre l'herbe. Vous pouvez définir différents Tailles de pinceau et change le pinceau Opacité et le Force de la cible.

Il est maintenant temps d'être créatif et de peindre l'herbe sur le terrain.

Si vous souhaitez ajouter un maillage pour peindre des détails sur votre terrain, par exemple des rochers, vous devez répéter le même processus que lors de l'importation de l'herbe. Cependant, cette fois, lorsque vous cliquez sur Modifier les détails, choisir Ajouter un maillage détaillé. Cela ouvrira une fenêtre où vous pourrez spécifier plusieurs paramètres du maillage de détail, très similaires à celui que vous avez utilisé pour importer l'herbe.. 

Malheureusement, les atouts environnementaux n'incluent pas de préfabriqué; vous ne pourrez donc pas peindre directement des roches. Cependant, vous pouvez rechercher des pierres dans Unity Asset Store, car c'est un endroit idéal pour trouver des actifs gratuits..

Conclusion

Ceci conclut le tutoriel sur Unity Terrain Tools. Vous avez découvert plusieurs outils et configurations de terrain. Avec ces connaissances, vous pouvez désormais créer, modifier et améliorer des terrains actuels ou nouveaux pour votre prochain jeu ou application de pointe..

L'unité a une économie active. Il existe de nombreux autres produits qui vous aident à construire votre projet. La nature de la plate-forme en fait également une excellente option à partir de laquelle vous pouvez améliorer vos compétences. Quoi qu’il en soit, vous pouvez voir tout ce que nous avons à votre disposition sur le marché Envato..

Si vous avez d'autres questions ou commentaires, comme toujours, n'hésitez pas à laisser un trait dans la section commentaires.