Qu’est ce que la plateforme de développement: Unity

Unity est un moteur 3D de jeu multiplateforme (Windows / Linux / mac, Android / iOS, Xbox One / PS4 etc…). On peut développer des jeux avec des scripts et on peut aussi y faire de la modélisation 3D.


Pourquoi Unity?

L’envie de développer et de créer m’a menée vers Unity, développer un jeu-vidéo est intéressant, on apprend par soi-même, on se renseigne. Unity est une plateforme qui évolue énormément, entre le début de la création et jusqu’à la compilation du jeu, j’ai pu développer sur trois versions d’Unity différentes avant de retourner sur une ancienne version. De plus, grâce à Udemy j’ai pu trouver une formation complète qui m’a permis de réaliser un jeu vidéo et d’en apprendre plus sur Unity.


Le rapport avec l’option Slam :

Unity a la particularité d’utiliser le langage de programmation C# pour réaliser des animations et des interactions entre les objets et les joueurs.


Comment installer Unity ?

Avant d’installer Unity, il faut s’inscrire. La plateforme a trois types de licence dont deux licences obligatoires en fonction des revenus générés grâce à la création de jeux. La première licence est gratuite, tous les éléments importants pour créer des jeux y sont présents. Ensuite, nous avons deux licences allant de 37 euros, pour quelqu’un gagnant plus de 91 000 euros, mais moins de 182 000 euros sur son jeu, à 138 euros, pour les personnes gagnant plus de 182 000 euros. Bien entendu, les personnes ayant des licences payantes ont des avantages comme des accès prioritaires ou des diagnostics cloud. Ensuite vous pouvez télécharger sur le site d’Unity l’installeur Download – Unity. Il existe deux installeurs de Unity différents, Unity et Unity Hub. Unity est l’installeur par défaut, le premier. Alors que Unity Hub est arrivé ensuite. Unity Hub permet de changer de version si on le souhaite en cours de projet. Le changement de version sur Unity Hub se fait sans passer par le site web et il est possible d’installer comme cela plusieurs versions d’Unity sur une seule machine. Tandis que l’autre installeur de Unity permet seulement de gérer ses projets sur le cloud en plus de quelques fonctionnalités de base (créer un projet).


Comment créer un projet? Unity

Quand l’installation est finie (installation de Unity Hub dans notre exemple), la création de projet est simple. Un bouton New affichera un pop-up et demandera le type de jeux que nous souhaitons réaliser, son nom et où nous souhaitons qu’il se trouve. Ensuite, il faudra double-cliquer sur le projet et Unity affichera le plan de travail. Il est aussi possible d’ajouter un projet existant sur notre ordinateur en utilisant le bouton Add, ce qui ouvrira un pop-up avec l’emplacement où se situent tous les projets existants.


Comment se présente l’outil ?

Unity contient énormément de composants et de fenêtres, on peut les placer comme on le souhaite.


La scène : Fenêtre rouge

C’est ici que le plus gros de l’application se trouve. C’est ici que l’on fait tous nos changements, que l’on place nos GameObject (personnages, murs, etc…). Unity fonctionne par scènes, par exemple dans notre labyrinthe, nous avons plusieurs niveaux, chaque niveau correspond à une nouvelle scène. Voici par exemple la scène 1. Pour visualiser notre scène, il nous faut une caméra par scène, dans notre cas le joueur a une caméra à la place des yeux (invisible pour le joueur).


La hiérarchie : Fenêtre bleu

C’est ici que l’on peut voir tous les composants de notre scène, c’est grâce aux create que l’on ajoute des composants ou grâce aux prefabs. Les prefabs sont toutes les icônes bleues visibles, ce sont des objets qui sont liés entre eux par un lien de parenté et qui peuvent être stockés pour être réutilisés dans d’autres scènes. Si un prefab est modifié et que l’on applique la modification (elle peut être seulement locale si on le souhaite), tous les prefabs du jeu seront modifiés. C’est pratique quand par exemple un mur est trop bas, au lieu de modifier tous les murs un par un, on n’en modifie qu’un seul. L’autre particularité des prefabs et que chaque enfant (c’est à dire tout ce qui se trouve dans le premier objet de la hiérarchie) à comme point 0 le centre de l’objet parent. Si on souhaite centrer un objet enfant, lui donner des coordonnés 0;0;0 ne le mettra pas au centre de la scène.


Le projet : Fenêtre violette

Tout ce qui concerne notre jeu se trouve ici, les assets téléchargés pour le jeu, les prefabs, les différentes scènes (nous avons un aperçu des scènes sur l’image), les sons, les images. Quand notre jeu est compilé, tout ce qui se trouve dans le dossier Asset est trié et seul ce qui est utile aux jeux est gardé, le reste n’est pas compilé : tous les matériaux téléchargés dans des packs mais non utilisés par exemple.


L’inspector : Fenêtre Verte

C’est dans cette fenêtre que nous modifions nos objets, en leur rajoutant des scripts, des zones de collision, des animations, des sons. C’est ici aussi que les positions sont enregistrées, que nous pouvons facilement leur faire faire une rotation sans le faire à la main (tourner à précisément 90° plutôt que de le faire à l’œil). Tout ce qu’on doit savoir sur notre objet se trouve dans cette fenêtre, tous les détails.


Game : Fenêtre sans bordure

Ceci correspond à notre émulateur, c’est l’aperçu que voit la caméra, que voit le joueur. Quand on lance le jeu, c’est dans cette fenêtre que notre curseur est automatiquement bloqué. On peut choisir de mettre cette fenêtre en grand quand on appuie sur le bouton play, ou on peut la mettre de façon à avoir la vue d’un portable, on peut aussi choisir sa résolution, ici 16 : 9.


Autre fenêtre utile :

On retrouve deux fenêtres importantes, la première en bleu, correspond à l’asset store, c’est ici que l’on peut trouver des matériaux, des textures (le mur, le plafond), des objets (la clé et les ennemis), certain Asset sont payants, d’autres gratuits.
Ensuite nous avons la console, dans la fenêtre rouge. Quand on veut tester, faire des « Debug.Log » c’est ici que tous nos messages d’erreur et de débogage s’afficheront.


La veille

Pour me renseigner sur l’outil, sur son évolution, j’ai utilisé plusieurs sites, comme Udemy. Le professeur qui gère ce cours dans la plateforme Udemy, fait des mises à jour régulières pour les versions supérieures d’Unity. Le site de Unity partage aussi ses actualités importantes sur sa page d’accueil ou sur un onglet community du site : Unity Technologies Blog.


Voici une petite doc que j’ai réalisé concernant le code effectué en C#