Développer des jeux avec Godot 4 et le langage C#
Anthony Cardinale
Julian Murgia
D-Booker éditions
Avant-proposvii
1. Qu'allons-nous voir dans ce livre ?vii
2. Crédits photosx
3. Sources des exemplesx
4. Terminologie en anglais et interface françaisex
5. URL raccourciesxi
Notions fondamentales1
1. Découverte de Godot Engine
3
1.1. Téléchargement de Godot5
1.2. L'interface de Godot6
1.3. Modification de l'interface16
1.4. Noeuds et arbres17
2. Création d'une scène sous Godot
19
2.1. Organisation du projet20
2.2. Import des textures21
2.3. Création d'une balle physique24
3. L'instanciation avec Godot
35
3.1. Création de la plateforme35
3.2. Création de la scène principale38
3.3. Instanciation de scènes dans Godot39
3.4. Lancement du jeu41
4. Initiation à la création de scripts avec Godot
43
4.1. Premier script44
4.2. Indentation48
4.3. Variables et constantes48
4.4. Commentaires49
4.5. Conditions49
4.6. Afficher du texte dans la console50
5. Plus loin avec C#
51
5.1. Création d'un bouton51
5.2. Récupérer un texte saisi par l'utilisateur55
6. Interview de Gilles Roudière, contributeur au projet Godot
57
Développement d'un jeu 2D63
7. Mise en place du projet
65
7.1. Création du projet65
7.2. Trouver des ressources pour son jeu66
7.3. Importer les ressources68
7.4. Paramètres du projet71
7.5. Système de coordonnées 2D72
8. Création du personnage joueur
73
8.1. Création du noeud joueur73
8.2. Création du script du personnage76
9. Animation du personnage
87
9.1. Création des animations88
9.2. Programmation des animations92
10. Création d'une plateforme 2D
95
10.1. Création d'une nouvelle scène95
10.2. Création de la plateforme96
10.3. Programmation de la gravité98
10.4. Programmation du saut101
11. Mise en place d'un TileSet
103
11.1. Création des tuiles105
11.2. Solidité des tuiles108
12. Conception d'un niveau du jeu
113
12.1. Création de la structure de notre niveau113
12.2. Mise en place de la caméra115
12.3. Création d'un arrière-plan en parallaxe117
13. Interaction avec les objets
123
13.1. Création d'une pierre précieuse123
13.2. Création du script de ramassage126
13.3. Test de notre script132
14. Création de l'interface utilisateur
135
14.1. Mise en place de l'interface136
14.2. Programmation de l'interface142
15. Ajout des ennemis
145
15.1. Création d'un ennemi statique145
15.2. Création d'un ennemi mouvant148
16. Musique et effets sonores
155
16.1. Musique d'ambiance155
16.2. Effets sonores158
17. Finalisation de notre jeu
163
17.1. Création du menu principal163
17.2. Script du menu principal167
17.3. Compilation du projet169
Création d'un jeu 3D175
18. Modélisation 3D : Initiation à Blender
177
18.1. Téléchargement de Blender178
18.2. L'interface de Blender179
18.3. Les raccourcis et outils indispensables180
Création rapide182
Changer de mode183
Points, arêtes, faces183
Les transformations184
Mode Transparence186
Couper le modèle 3D187
Outils de sélection188
Extrusion190
Biseau190
Récapitulatif191
19. Modélisation 3D du niveau de notre jeu
193
19.1. Création des zones193
19.2. Alignement des deux zones199
19.3. Création des couloirs201
19.4. Isoler des éléments206
19.5. Exporter pour Godot208
20. Mise en place du projet Godot
209
20.1. Importation de la modélisation210
20.2. Coloration du niveau211
20.3. Ajout de la physique215
20.4. Création de la scène du premier niveau218
21. Création de la balle
221
21.1. Création de l'objet221
21.2. Préparation des collisions227
21.3. Instanciation de la balle et redimensionnement229
21.4. Ajout d'une caméra232
22. Anticrénelage, éclairage et post-processing
235
22.1. Anticrénelage235
22.2. Éclairage237
22.3. Post-traitement241
23. Déplacement de la balle
249
23.1. Script de la balle249
23.2. Script de la caméra256
24. Déclenchement de la fin du niveau
259
24.1. Détecter la fin du niveau260
24.2. Gérer la chute dans le vide264
25. Quelques objets à ramasser
267
25.1. Création d'un objet à ramasser267
25.2. Script de collision271
26. L'interface utilisateur
277
26.1. Affichage du compteur de cubes et du temps277
26.2. Programmation du compteur279
26.3. Programmation du chronomètre281
27. Finalisation et publication du jeu
285
27.1. Émettre un son quand un objet est ramassé285
27.2. Compilation du jeu289
Aller plus loin avec Godot293
28. Les pistes pour s'améliorer
295
Concepts et termes anglais
299
Index303
À propos des auteurs309