1. Unity 3D :
le guide du
débutant
Démarrer son projet de jeu
3D avec Unity.
2. Présentatio
n de Unity
• C’est le moteur de jeu le plus populaire
au monde.
• Vous pouvez créer des jeux 2D ou 3D
pour toutes les plateformes.
• La programmation se fait avec C# ou
simplement en « visual scripting » avec
Bolt par exemple.
3. Configurer les outils
• Téléchargez Unity HUB depuis
http://unity.com.
• A partir du HUB, installez une
version de Unity (pensez à installer
Visual Studio également).
• Sélectionnez les plateformes pour
lesquelles vous souhaitez
développer puis lancez l’installation.
4. Créer un projet depuis Unity HUB
• Rendez-vous sur le menu
« Projects », cliquez sur « New »
puis choisissez votre configuration.
Prenons par exemple un projet 3D.
5. L’interface de
Unity
• L’interface est découpée en
plusieurs zones :
• La scène pour créer vos
niveaux
• Le jeu pour visualiser le rendu
final
• Le projet avec vos assets
(ressources)
• La hiérarchie avec les assets
utilisées dans la scène actuelle
• L’inspecteur pour afficher les
propriétés de l’objet sélectionné.
6.
7. Ajuster l’interface
• Vous pouvez ajuster votre
environnement de travail à votre
guise.
• L’outil layout permet de changer
l’interface en 2 clics.
• En mode « 2 by 3 » vous aurez une
interface similaire à la mienne.
8. Importer des assets 3D
Pour créer un jeu il vous faut des assets. Unity accepte tous
les formats 3D mais le FBX est le plus approprié.
Pour ajouter des ressources, faites-les glisser/déposer de
votre ordinateur vers la fenêtre projet de Unity.
Vous pouvez également trouver des assets sur l’asset store
de Unity3D.
9. Récupérer
les assets
de mon
projet
• L’article de blog, les tutoriels
vidéo/texte ainsi que les ressources se
trouvent sur mes sites web :
• https://formation-facile.fr/creation-dun-jeu-
dexploration-en-3d-avec-unity-et-blender/
(Article complet + code + assets)
• https://unity3d-dev.com/cours/creer-un-jeu-
dexploration-3d-avec-unity-et-
blender/lessons/preparation-des-textures/
(Cours vidéo avec player évolué)
10. Utiliser les modèles 3D
• Pour ajouter un modèle 3D à la scène, faites-le glisser du projet
vers la scène ou vers la hiérarchie puis vous pourrez ajuster le
modèle.
11. Créer un
personnage
• Dans mon exemple le personnage
jouable sera un bateau. Faites le
glisser sur la scène.
• Avec le bateau sélectionné, ajoutez
via la hiérarchie les composants
RigidBody et MeshCollider avec
les mêmes réglages que moi.
• Ces composants permettent de
travailler avec la physique.
12. Créer un script et
l’ajouter à un objet
• Pour créer un script : clic droit sur
le projet puis « Create/C# Script ».
• Nommez votre script et faites le
glisser sur l’objet qui doit posséder
ce script, en l’occurrence, le
bateau.
• Pour éditer un script, double
cliquez dessus et modifiez le code
sous Visual studio.
• Quand vos variables sont en public,
vous pouvez modifier la valeur
depuis l’inspecteur.
13. Les scripts à créer
Il vous faudra créer un script « CamFollow » à placer sur la
caméra. Ce script permettra de gérer la caméra.
Il faut un script « BoatCtrl » sur le bateau qui sera chargé de
gérer le déplacement du bateau (via les touches du clavier).
14. BoatCtrl.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class BoatCtrl : MonoBehaviour
{
public float speed = 1.5f; // Vitesse bateau
float force; // Avant / arrière
float dir; // Gauche / droite
Rigidbody rb;
private void Start()
{
rb = GetComponent<Rigidbody>(); // Récupérer le rigidbody
}
void FixedUpdate() // tourne en boucle 60 images/Sec
{
// Calcul force & direction en fonction des flèches du clavier
force = Mathf.SmoothStep(force, Input.GetAxis("Vertical"), Time.deltaTime * 10);
dir = Mathf.SmoothStep(dir, Input.GetAxis("Horizontal"), Time.deltaTime * 5);
// On applique la velicité au rigidbody pour avancer
Vector3 velocity = new Vector3(0, force * speed, 0);
rb.velocity = rb.transform.TransformDirection(velocity);
// On applique la rotation pour la direction
Vector3 angularVel = new Vector3(0, dir * speed/2 , 0);
rb.angularVelocity = angularVel;
}
}
15. CamFollow.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CamFollow : MonoBehaviour
{
// Objet à filmer (bateau à faire glisser dans la variable de l’inspecteur
public Transform target;
public Vector3 offset; // Décalage cam par rapport à target
void Start() // Se lance au début du jeu
{
// Calcul de l’offset
offset = transform.position - target.position;
}
void LateUpdate() // Tourne en boucle
{
// On positionne la caméra pour filmer l’objet
transform.position = target.position + offset;
}
}
16. Tester le jeu
• Cliquez sur le bouton « Play »
en haut de l’interface.
• S’il n’y a aucune erreur, le jeu
se lance et vous pouvez
contrôler le bateau avec les
flèches du clavier.
• Pour voir le tutoriel, visitez le
lien vers mon site web donné
plus haut.
17. Qui suis-je ?
• Anthony Cardinale, Ingénieur en
informatique et développeur certifié
de jeux vidéo.
• J’ai publié de nombreuses
formations vidéo sur Udemy ainsi
que des livres sur Unity.
http://anthony-cardinale.fr
18. Pour aller plus loin
• Retrouvez près de 80 heures de
cours vidéo sur le développement
de jeux vidéo sur ma page Udemy.
• Je vous conseille de commencer par
ma formation ultra complète.
• Si vous préférez la 2D, consultez
plutôt ce cours.
• Si vous souhaitez « Créer sans
coder », je propose ce tutoriel
utilisant bolt.