Ce support sur Unity, la plateforme de jeu la plus utilisée par les développeurs, est destiné aux développeurs qui souhaitent apprendre à créer un jeu vidéo en 2D de A à Z. Que vous soyez novice ou initié dans la création de jeux vidéo, vous appréhenderez Unity en profondeur en vous focalisant sur les fonctionnalités utiles pour la 2D, certaines étant toutefois valables pour la 3D. Pour guider le lecteur dans la création d'un jeu vidéo en 2D, l’auteur explore les différentes étapes d’un tel...
Ce support sur Unity, la plateforme de jeu la plus utilisée par les développeurs, est destiné aux développeurs qui souhaitent apprendre à créer un jeu vidéo en 2D de A à Z. Que vous soyez novice ou initié dans la création de jeux vidéo, vous appréhenderez Unity en profondeur en vous focalisant sur les fonctionnalités utiles pour la 2D, certaines étant toutefois valables pour la 3D.
Pour guider le lecteur dans la création d'un jeu vidéo en 2D, l’auteur explore les différentes étapes d’un tel projet :
la création d'un projet et la présentation générale des outils proposés par Unity ;
l'habillage des scènes grâce aux objets propres au moteur de jeu ;
l'animation des personnages et des éléments du décor pour rendre le jeu plus vivant ;
la mise en place de la physique et de l'interaction pour un gameplay à proposer aux joueurs ;
la gestion de la caméra pour cadrer le jeu et pour les effets à appliquer ;
la gestion de l'interface utilisateur permettant d’afficher aux joueurs les informations utiles à l’expérience de jeu ;
la gestion du son et de la musique pour rendre une expérience vidéoludique plus immersive ;
Pour terminer, le lecteur découvre une introduction au mode de jeu multijoueur et apprend à déployer et publier son jeu afin de le partager sur les différentes plateformes disponibles.
3. Configuration de l'environnement de développement d'un projet 2D
4. Présentation de la structure de base d'un projet Unity
5. Prise en main de l'éditeur de Unity
5.1 Menus
5.2 Fenêtres
Création et habillage de scènes
1. Présentation
1.1 Définition d'une scène
1.2 Manipulation de la grille
2. Concept de GameObject
2.1 Définition
2.2 Structure d'un GameObject
2.3 Manipulation de GameObject
2.3.1 Création
2.3.2 Duplication
2.3.3 Suppression
2.4 Organisation de GameObject
2.5 Les Prefabs
2.5.1 Définition
2.5.2 Création
2.5.3 Modification
2.5.4 Désolidarisation
3. Ajout de sprite à une scène
3.1 Définition de Sprite
3.2 Importation de personnages et de décor
3.3 Traiter une image contenant plusieurs images
3.4 Création d'une palette de dessin
3.5 Outils supplémentaires pour Tilemap
3.6 Ajout de décors
4. Materials et textures
4.1 Définition du Material
4.2 Structure d'un Material
4.3 Définition d'une texture
4.4 Combinaison de Texture et de Material
4.5 Les shaders
4.5.1 Présentation
4.5.2 Exemple
Animation 2D
1. Création de sprites animés
1.1 Introduction à l'animation 2D
1.2 Création rapide
1.3 Animator
1.4 Animator Controller
1.5 Animator Controller Override
1.6 Animation
2. Animation par image-clé
3. Animation par spritesheet
4. Création de transition d'animation
4.1 Conditions d'une animation
4.2 Événement d'animation
5. Effets visuels
5.1 Sensation de jeu
5.2 Particules
6. Timeline
Interaction et physique
1. Scripts C# et scripts visuels
1.1 Définition
1.2 Structure d'un script
1.2.1 Script C#
1.2.2 Script visuel
1.3 Différences entre script C# et Visual Scripting
2. Création des scripts
2.1 Script C#
2.1.1 Création du fichier
2.1.2 Aide à l'organisation du code
2.1.3 Spécificité du code C# pour Unity
2.1.4 Interactions
2.1.5 Scriptable Object
2.2 Visual Script
2.2.1 Création d'un script visuel
2.2.2 Aide à l'organisation du code
2.2.3 Spécificité du Visual Scripting
3. Utilisation de la physique 2D
3.1 Définition
3.2 Différences entre physique 2D et 3D
3.2.1 La composante Z
3.2.2 Les sprites et les mesh
3.2.3 Contraintes de camera
3.2.4 Incompatibilité entre 2D et 3D
3.3 Les composants physiques 2D
3.3.1 Les Colliders
3.3.2 Le Rigidbody2D
3.3.3 PhysicsMaterial2D
3.4 Collisions et Triggers
3.4.1 Collisions
3.4.2 Triggers
Caméra
1. Définition
2. Utilisation des outils de la caméra
2.1 Paramètres du composant
2.2 Les résolutions
2.3 Exemples d'utilisation de caméra
2.3.1 Caméra suivant le joueur
2.3.2 Minimap
2.3.3 Éléments de décor
3. Introduction aux caméras virtuelles
3.1 Définition
3.2 Cinemachine Virtual Camera
3.3 Blend list camera
3.4 State-Driven Camera
3.5 Dolly Camera With track
3.6 Target Group Camera
4. Effets sur la caméra
4.1 Effets avec URP
4.2 Effets sans URP
4.3 Effets de post-traitement
4.3.1 Bloom
4.3.2 Vignette
4.3.3 Motion blur
4.3.4 Lens distorsion
4.3.5 Color grading
4.3.6 Depth of field
4.3.7 Chromatic abberation
Interface utilisateur
1. Introduction à l'objet Canvas
1.1 Définition
1.2 Render mode
1.3 Ordre de rendu
1.4 Raycast
1.5 UI Scaling
2. Les éléments graphiques
2.1 Les éléments "Legacy"
2.1.1 Définition
2.1.2 Text
2.1.3 Input Field
2.1.4 Dropdown
2.1.5 Button
2.2 Les éléments principaux d'UI
2.2.1 Les équivalents des éléments "Legacy"
2.2.2 TextMeshPro
2.2.3 Image
2.2.4 Panel
2.2.5 Raw Image
2.2.6 Toggle
2.2.7 Scrollview
3. Boutons et événements
3.1 Event System
3.2 États d'un bouton
3.3 Appel de fonction
4. Adaptabilité à la taille de l'écran
4.1 Anchor
4.2 Résolution et mise à l'échelle
4.3 Les layouts
Création d'un système de son
1. Utilisation du système audio Unity
1.1 Introduction au son dans Unity
1.2 Audio Source
1.3 Bonnes pratiques pour le son
1.3.1 Gestion du son et de la musique
1.3.2 Chargement dynamique et variable de son
1.3.3 Mixage audio
1.3.4 Conformité des licences
1.4 Audio Mixer
2. Ajout de musique et de bruitage sur une scène
3. Utilisation des effets sonores
3.1 Effets
3.2 Spatialisation du son
Introduction au multijoueur
1. Historique du multijoueur
1.1 Le multijoueur dans les jeux vidéo
1.2 Le multijoueur sur Unity
2. Fondamentaux du jeu en réseau
3. Netcode for Objects
3.1 Installation
3.2 Composant du mode multijoueur
3.3 Tester localement un jeu multijoueur
Publication et déploiement
1. Configuration des paramètres de compilation
1.1 Présentation de la fenêtre de build
1.2 Ajout des scènes utiles
1.3 Player Settings
1.3.1 Paramètres globaux
1.3.2 Icon
1.3.3 Resolution and Presentation
1.3.4 Splash Screen
1.3.5 Other Settings
2. Utilisation des outils de déploiement
2.1 Windows
2.2 Android
2.3 macOS/iOS
2.4 WebGL
2.5 Autres
3. Différents modes de publication
3.1 Steam
3.2 Itch.io
3.3 Google Play Store
3.4 App Store
Conclusion
Index
Franck MARCEL
Franck MARCEL, autodidacte en développement de jeux vidéo, a acquis une solide expertise en utilisant Unity et en créant des prototypes de jeux. Il a travaillé pour diverses entreprises du secteur et en tant qu'auto-entrepreneur, explorant différentes facettes de l'industrie du jeu vidéo. Passionné par la pédagogie, il enseigne la création de jeux aux enfants et écrit ce livre sur Unity pour partager ses connaissances et inspirer de futurs développeurs.