4.6 out of 5
4.6
40 reviews on Udemy

Architecture d’un Model-View-Controller avec Unity

Développement d'un jeu de rythme tel que "Guitar Hero" avec Unity 5.6. 1ère partie : Design Pattern
Instructor:
Fred Moreau
219 students enrolled
Implementer une architecture type Model-View-Controller avec Unity.
Construire des modèles/architectures personnalisées.
Créer un type de ressources personnalisées réutilisable avec ScriptableObject.
Utiliser des objects UI de type Prefabs pour remplir une vue UI.
Implementer un modèle d'instance unique (Singleton).
Utiliser des entrées (input) personnalisées (keyboard, gamepads) pour déclencher des événements.
Implementer une mécanique de jeu basée sur le rythme.

Cette formation est la première d’une série de formation sur Unity, axée sur le travail d’équipe entre designers, graphistes et programmeurs.

Chaque formation de cette série touche à un sujet particulier de l’industrie du jeu. Cette formation porte sur les “design patterns”, les schéma d’architecture logicielle, et en particulier sur le model-view-controller et comment l’implémenter dans Unity.

En partant de rien, nous allons créer un jeu de rythme, tel que Guitar Hero ou Tap Tap Revenge. Nous commencerons par la structure des données et mécanique de jeu, qui concernent le design et la programmation, puis nous verrons l’affichage des données et retours visuels, qui concernent le graphisme et la programmation.

Nous allons commencer par une vue d’ensemble de certains design patterns connus (MVC, MVVM, MVP). Puis nous construirons la représentation graphique avec les outils d’interface de Unity, avant de travailler sur l’architecture du jeu.

Nous allons structurer le modèle de données (Model) du jeu, puis nous l’afficherons et l’éditerons à l’aide d’un inspecteur de propriétés personnalisé. Nous verrons aussi comment enregistrer des données dans l’éditeur à l’aide de la classe ScriptableObject.

Nous travaillerons ensuite sur la vue piste (View), en la remplissant d’objets d’interface enregistrés plus tôt, et nous animerons le défilement de la vue piste.

Nous travaillerons alors sur le contrôleur de jeu, récupérant les entrées (input) du joueur pour les utiliser dans la mécanique de jeu, et mettre à jour l’affichage.

A la fin de cette formation, les graphistes sauront ce qu’il est possible de faire avec les composants d’interface en 3D, les programmeurs et designers sauront créer et manipuler des modèles de données spécifiques à un jeu, depuis l’éditeur pour les utiliser au “runtime”.

Vue d'ensemble.

1
Présentation de l'auteur.

Fred Moreau, développeur de jeu, instructeur Unity et coach Agile.

2
Présentation de la série d'ateliers.

Vue d'ensemble de la séries d'ateliers de formation à Unity.

3
Présentation de cette formation.

Vue d'ensemble de cette formation.

4
Vue d'ensemble sur les "Design Patterns".

Vue d'ensemble du contexte du projet de jeu "Beat" et présentation des designs patterns Model-View-Controller, Model-View-ViewModel et Model-View-Presenter.

Construction de l'affichage (Interface 3D).

1
Construction de la vue "piste".

Dans cette vidéos, nous allons construire la représentation de la vue "piste" à l'aide des outils d'interface (UI) de Unity.

2
Enregistrement des éléments d'interface en Prefabs.

Dans cette vidéo nous allons enregistrer les "vues" sous forme de Prefabs pour les réutiliser par la suite.

Données d'une piste (Model).

1
Définition du modèle de données.

Commençons par travailler sur le modèle de données, la forme d'une piste de jeu.

2
Séparation des données et du composant.

Nous devons à présent séparer les données (la musique) du composant (le lecteur).

3
Création d'une ressource personnalisée depuis le modèle de données.

Nous pouvons maintenant créer un nouveau type de ressources pour stocker nos pistes de musique de jeu.

4
Génération aléatoire d'échantillons de données.

Pour travailler sur les composants suivants, nous avons besoin d'échantillons de données. Avant d'en créer dans l'éditeur, commençons par en générer aléatoirement.

5
Création d'un inspecteur de propriétés pour l'affichage et édition des données.

Ajoutons à présent un inspecteur personnalisé (CustomInspector) pour afficher et manipuler les données.

Représentation d'une "piste".

1
Remplissage de la vue à partir des données d'une piste.

Nous allons à présent créer le composant de représentation visuel de la piste (TrackView), et pouvoir remplir la vue avec les modèles d'interface, à partir des données.

2
Animation du défilement de la piste.

Avant de travailler sur le contrôleur, ajoutons un peu d'animation à la vue piste.

Controleur du jeu.

1
Usage d'entrées (input) personnalisées à l'aide de "Keycodes".

Nous allons maintenant créer le contrôleur de jeu, et utiliser des entrées (input) personnalisées en utilisant des "Keycodes".

2
Implémentation des mécaniques de tempo.

Il nous faut ajouter une mécanique de tempo pour ce jeu basé sur le rythme.

3
Référencement de la note courante.

Ajoutons à présent une référence à la note courante afin de pouvoir ensuite la comparer à la note jouée.

4
Mise en oeuvre de la mécanique de jeu.

Il est temps de rendre le jeu "jouable" en liant les entrées avec les données.

5
Synchronisation de la vue avec le contrôleur.

Pour que le jeu soit "jouable", il faut que le défilement de la piste soit synchrone avec le contrôleur.

6
Retour du visuel de la mécanique de jeu.

Avoir à lire dans la console pour savoir si l'on a bien joué ou non n'est pas très pratique. Ajoutons un retour visuel directement dans la vue.

Conclusion.

1
Retrospective de la formation.

Nous en avons terminé de ce prototype. Passons en revue ce que nous avons appris.

Leçons Bonus

1
Aller plus loin encore avec Unity et C#.

Quelques autres de mes formations en français, pour aller encore plus loin avec Unity.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.6
4.6 out of 5
40 Ratings

Detailed Rating

Stars 5
27
Stars 4
13
Stars 3
0
Stars 2
0
Stars 1
0
b883fca5e1a6d91f5f4edca9327860e8
30-Day Money-Back Guarantee

Includes

3 hours on-demand video
1 article
Full lifetime access
Access on mobile and TV
Certificate of Completion