Architecture d'un Model-View-Controller avec Unity
4.8 (6 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
55 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Architecture d'un Model-View-Controller avec Unity to your Wishlist.

Add to Wishlist

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
4.8 (6 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
55 students enrolled
Created by Fred Moreau
Last updated 6/2017
French
Current price: $10 Original price: $35 Discount: 71% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 2.5 hours on-demand video
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • 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.
View Curriculum
Requirements
  • Savoir se servir de l'éditeur de Unity.
  • Avoir les connaissances de base du développement C# avec Unity.
  • Savoir se servir de MonoDevelop (ou Visual Studio).
Description

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".

Who is the target audience?
  • Les développeurs Unity souhaitant parfaire leur connaissances.
  • Les développeurs d'application souhaitant mettre à profit leurs connaissances dans Unity.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
20 Lectures
02:30:04
+
Vue d'ensemble.
4 Lectures 08:57

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

Preview 01:30

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

Preview 00:42

Vue d'ensemble de cette formation.

Preview 00:58

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.

Preview 05:47
+
Construction de l'affichage (Interface 3D).
2 Lectures 18:32

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

Construction de la vue "piste".
14:15

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

Enregistrement des éléments d'interface en Prefabs.
04:17
+
Données d'une piste (Model).
5 Lectures 45:47

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

Définition du modèle de données.
05:21

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

Séparation des données et du composant.
04:24

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

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

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.

Génération aléatoire d'échantillons de données.
10:12

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

Création d'un inspecteur de propriétés pour l'affichage et édition des données.
21:40
+
Représentation d'une "piste".
2 Lectures 16:38

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.

Remplissage de la vue à partir des données d'une piste.
12:00

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

Animation du défilement de la piste.
04:38
+
Controleur du jeu.
6 Lectures 55:44

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

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

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

Implémentation des mécaniques de tempo.
06:45

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

Référencement de la note courante.
03:17

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

Mise en oeuvre de la mécanique de jeu.
08:56

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

Synchronisation de la vue avec le contrôleur.
14:54

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.

Retour du visuel de la mécanique de jeu.
10:39
+
Conclusion.
1 Lecture 04:26

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

Preview 04:26
About the Instructor
Fred Moreau
4.5 Average rating
158 Reviews
955 Students
8 Courses
Game Developer, Unity Instructor, Agile Coach

Coach and Consultant - Design & Development, Business, Training

[ English ]

With a strong technical expertise and a taste for design, I've had the opportunity to lead teams of creative people through development of innovative projects.

I'm passionate about learning and training, I started giving training early and have been involved in training certification programs. When you work in this industry, sharing your knowledge is not only a duty, it's the opportunity to learn even more.

I'm a self-taught developer myself. I work with Unity since 2011, and was very lucky to meet with mentors who taught me a great deal about OOP. That's a lot to learn about when your background is not in engineering, though, I figured that if I could do it, anyone can.

[ Français ]

Je suis passionné par l’apprentissage et l’enseignement. J’ai donné mes premières formations très tôt et me suis impliqué dans les programmes de certifications de grands éditeurs. Quand on travaille dans cette industrie, partager ses connaissances est plus qu’un devoir, c’est aussi le meilleur moyen d’apprendre d’avantage.

Je suis développeur autodidacte. Je travaille avec Unity depuis 2011 et j’ai eu la chance de rencontrer d’excellents mentors qui m’ont beaucoup appris sur la programmation objet.
C’est beaucoup de choses à apprendre lorsque vous n’avez pas un parcours d’ingénieur. Cependant, si j’y suis parvenu, n’importe qui peut en faire autant.