Création et habillage de scènes
Présentation
1. Définition d’une scène
Une scène Unity est un espace de travail dans lequel il est possible de créer et visualiser le contenu du jeu. Il représente un environnement, un niveau du jeu, un menu, un environnement de test, tout cela comprenant des personnages, des décors, des lumières, des caméras et d’autres éléments interactifs.
Un jeu créé par Unity est composé de plusieurs scènes. Ces scènes peuvent aussi bien servir à créer les éléments constituant le squelette du jeu qu’à créer des outils pour le développeur à des fins de tests. Chaque scène peut être un niveau, un menu ou un outil, il est donc crucial de connaître tous les éléments pouvant être ajoutés.
Une scène Unity se présente ainsi :
-
Une fenêtre disposée au centre avec :
-
Un onglet Scene qui contiendra tous les GameObject de la scène.
-
Un onglet Game qui affichera un aperçu du jeu et l’exécution du jeu.
-
Une fenêtre Hierarchy disposée à gauche qui représente l’arborescence de la scène. Elle contiendra tous les GameObject de la scène.
-
Une fenêtre Inspector disposée à droite qui contiendra le détail d’un GameObject sélectionné....
Concept de GameObject
1. Définition
Un GameObject est l’instance d’objet de base de Unity. C’est la structure de base qui accueillera tous les éléments permettant d’interagir et de communiquer avec les éléments du jeu. Les GameObject peuvent contenir des scripts, des animations, des formes géométriques, des textures, des lumières, de la gravité, etc. Ils peuvent être hiérarchisés pour représenter la structure de scène du jeu ou la composition d’un menu. Plus globalement, un GameObject est un objet qui contient tous les éléments nécessaires pour décrire un objet ou une entité du jeu.
2. Structure d’un GameObject
Ces composants peuvent être classés en plusieurs catégories :
-
Composants de rendu
-
SpriteRenderer : gère la façon dont est affichée une image 2D ;
-
Light : ajoute une source de lumière à la scène ;
-
Particle System : ajoute un effet de particule permettant de faire des effets visuels soit pour une action, soit pour ajouter de la vie à une scène.
-
Composants de physique
-
RigidBody : permet d’ajouter de la physique (gestion des forces) à un objet de la scène ;
-
BoxCollider2D : zone de détection de forme carrée ;
-
CircleCollider2D : zone de détection de forme circulaire ;
-
CapsuleCollider2D : zone de détection de forme...
Ajout de sprite à une scène
1. Définition de Sprite
Un Sprite est une image qui est utilisée dans Unity pour afficher l’élément représenté sur l’image dans la scène. Il est la base de tout jeu 2D, que ce soit pour créer des personnages, des décors ou des éléments d’interfaces, mais aussi des textures. Il est aussi courant qu’une image contienne plusieurs éléments qui seront amenés à être traités comme plusieurs Sprites : on appelle ce genre d’image des feuilles de sprite, ou spritesheets. Ces Sprites peuvent représenter plusieurs éléments distincts ou plusieurs étapes d’une animation.
Les Sprites sont couramment utilisés pour :
-
représenter des personnages tels que des personnages principaux, ennemis, PNJ (personnages non joueurs), animaux, etc. ;
-
afficher des objets interactifs tels que des armes, des clés, des potions, des pièces et autres collectibles ;
-
créer des environnements grâce à des sprites d’arbres, de bâtiments, des reliefs, etc. ;
-
ajouter des effets visuels en fournissant des sprites pour des explosions, des particules, des effets d’impacts, etc. ;
-
avoir des éléments d’interface utilisateur tels que des boutons, des icônes, des barres de progression, des éléments de menu afin d’avoir une esthétique propre au jeu.
2. Importation de personnages et de décor
Il existe de nombreux sites fournissant du contenu gratuit. Les éléments utilisés pour les exemples suivants proviennent du site...
Materials et textures
1. Définition du Material
Un Material est un objet permettant de définir les paramètres d’une apparence visuelle d’un objet. Par exemple, il permet de donner un aspect mat ou brillant, du relief et de la couleur entre autres. Ces matériaux pourront être affectés à des GameObject en utilisant un composant Mesh Renderer ou Sprite Renderer. Il est aussi possible de créer un matériau personnalisé en utilisant des shaders qui permettent de contrôler de manière plus fine la façon dont interagit la lumière avec l’objet possédant le matériau.
2. Structure d’un Material
Le Rendering mode permet de choisir si le matériau sera opaque ou avec de la transparence. L’Albedo permet de choisir la couleur du Material. Si le carré à gauche de l’Albedo est vide, seule la couleur sera changée. Sinon, une texture peut y être ajoutée en plus de lui affecter une couleur.
Le Metallic & Smoothness permet d’ajuster la réflexion de la lumière pour donner un aspect plus ou moins métallique.
La Normal map permet de donner du relief à la texture. L’image attendue dans ce champ est une Normal map, une carte topographique de l’image. Il existe des logiciels tels que « Sprite Lamp » pour créer des Normal maps à partir d’une série d’images d’éclairage de chaque côté.
L’Emission permet d’ajuster la lumière émise par l’objet indépendamment de la source de lumière.
3. Définition d’une texture
Une texture est une image qui peut être utilisée pour donner une apparence détaillée à un objet 2D ou 3D en donnant des informations de couleur et de forme. Pour ce faire, elle est associée à un Material...