La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Premières notions de la 3D

Présentations similaires


Présentation au sujet: "Premières notions de la 3D"— Transcription de la présentation:

1 Premières notions de la 3D

2 Plan de leçon 3D : définition Les notions de base Première tentative
Projection Caméra Première tentative Transformations Modèle Éclairage Contrôle

3 3D : définition Dans le domaine de l’informatique, la 3D est la représentation graphique de données géométriques tridimensionnelles dans un plan 2D

4 Notions de base : Projection
Il y a principalement 2 types de projections utilisées Orthographique Perspective

5 Base : Caméra La caméra permet de visualiser le monde selon certaines caractéristiques définies Une caméra est définie par Son champ de vision Sa position dans l’espace Son point « look at » Son « haut » Son plan rapproché Son plan éloigné Tout ce qui se retrouve entre les deux plans est le visible

6 Base : Caméra Ce qui précède le plan rapproché s’appelle le « near clipping » Ce qui succède le plan éloigné s’appelle le « far clipping »

7 LibGDX : Caméra La classe PerspectiveCamera est celle qui permet de créer une caméra pour le projet Lors de l’instanciation de la caméra plusieurs propriétés sont à prendre en considération Pour le constructeur, on doit considérer le champ de vision (field of view) Plus la valeur est grande plus on aura un effet « fish eye » On aussi considérer la largeur et la hauteur de la caméra FOV = 2 * atan (dimCapteur / 2f), où f tient pour la distance focal cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

8 LibGDX : Caméra void cameraInit() { cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set (10f, 10f, 10f); // Position de la camera cam.lookAt(0, 0, 0); // Camera regarde a cet endroit cam.near = 1f; // Near clipping cam.far = 300f; // Far clipping cam.update(); // MAJ de la camera }

9 Base : modèle Un modèle est une ressource 3D qui est constitué de nœuds Chaque nœud est constitué d’une géométrie et de matériel Il peut aussi avoir une animation Un modèle n’est pas fait pour être rendu, il faut utiliser une ou plusieurs instance d’un modèle Les nœuds d’un modèle sont représentés par d’autres modèles ou nœuds Chaque nœud peut être transformé, ce qui cause que chaque nœud enfant est aussi transformé Par exemple la rotation d’un bras affecte l’avant-bras, le poignet, etc.

10 LibGdx : Modélisation Dans LibGdx, on doit utiliser plusieurs types d’objets pour pouvoir réaliser un projet en 3D Entre autres Model : Représente le modèle à rendre. Ex : Cube, Sphère, etc. ModelBuilder : Une classe qui permet de générer des modèles de base ModelInstance : Instance d’un modèle. Ex : Un kit de Lego™ va utiliser plusieurs fois le même model Lors de la création d’un modèle, on doit prendre en considération le type de matériel dont celui-ci est constitué.

11 Base : transformations
Comme tout objet 3D (modèle), il est possible d’effectuer des transformations géométriques Pour chaque modèle, il suffira d’appliquer les opérations désirées à la matrice de transformation transform Les transformations disponibles sont La rotation avec rotate monCube.transform.rotate(new Vector(0, 1, 0), 1f); La translation avec translate monCube.transform.translate(0f, 1f, 1f); L’homothétie avec scale monCube.transform.scale(0.5f, 1f, 1f);

12 Base : matériel Le matériel permet d’indiquer à quoi ressemblera le modèle lors du rendu Par exemple, si l’on veut des objets de couleurs différentes, il suffit de modifier l’attribut de couleur de ces derniers monCube.materials.get(0).set(new Material(ColorAttribute.createDiffuse(Color.RED)));

13 Blender Nouveau Cycle Render Sélectionner un objet bouton de droite
Pivoter bouton du milieu Ajouter un objet, onglet « Create » et choisir le cylindre Cap Fill Type  Triangle Fan Sélectionner le cylindre Aller en Edit mode Afficher le mode Wire frame Sélectionner le dessus du cylindre Supprimer les vertices

14 Changer pour la vue orthogonale frontale
Pavé numérique 1 (Pour vue frontale) Prendre le menu « View » fait l’affaire Pavé numérique 5 (Pour vue orthogonale) Aller en mode d’édition Menu du bas où c’est inscrit « Object mode » Afficher en mode « wire mesh » Menu du bas où c’est inscrit « Solid mode » En mettant la souris sur le cylindre, appuyer sur CTRL + R Permet d’activer la séparation des objets Rouler la molette de la souris pour avoir 4 lignes Appuyer sur « B » pour activer le mode sélection Sélectionner la série de point du dessus Appuyer sur « S » pour redimensionner Taper « 0.8 » pour redimensionner à 80%

15 Exercices Avec LibGdX, créez une petite application qui affiche un modèle de base Sphère Cube Cylindre Cone Etc.

16 Références https://www.youtube.com/watch?v=P56YfZ_sTB8
Environnement et matériel


Télécharger ppt "Premières notions de la 3D"

Présentations similaires


Annonces Google