Introduction - Laboratoire d'algèbre, de combinatoire et...

33
Chapitre 1 : Introduction Alexandre Blondin Mass´ e epartement d’informatique Universit´ e du Qu´ ebec `a Montr´ eal 9 janvier 2018 Infographie INF5071 A. Blondin Mass´ e (UQAM) 9 janvier 2018 1 / 33

Transcript of Introduction - Laboratoire d'algèbre, de combinatoire et...

Page 1: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Chapitre 1 : Introduction

Alexandre Blondin Masse

Departement d’informatiqueUniversite du Quebec a Montreal

9 janvier 2018Infographie

INF5071

A. Blondin Masse (UQAM) 9 janvier 2018 1 / 33

Page 2: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Table des matieres

1. Presentation du cours

2. Introduction a l’infographie

3. Materiel et logiciels

A. Blondin Masse (UQAM) 9 janvier 2018 2 / 33

Page 3: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Table des matieres

1. Presentation du cours

2. Introduction a l’infographie

3. Materiel et logiciels

A. Blondin Masse (UQAM) 9 janvier 2018 3 / 33

Page 4: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Informations generales

Trimestre Hiver 2018Titre du cours Infographie

Sigle INF5071Horaire Mardi, de 13h30 a 16h30

Departement InformatiqueEnseignant Alexandre Blondin Masse, professeur

Coordonnateur Alexandre Blondin Masse, professeurBureau PK-4525

Telephone 5516Courriel [email protected]

Page web http://lacim.uqam.ca/˜blondin

A. Blondin Masse (UQAM) 9 janvier 2018 4 / 33

Page 5: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Description du cours (1/2)

I Connaıtre les algorithmes fondamentaux del’infographie;

I Etre capable de realiser une application graphiquesimple a l’aide d’une bibliotheque graphique (par exemple,OpenGL);

I Rappels des notions de base en calcul vectoriel et engeometrie;

I Objets geometriques elementaires;

I Codage des objets en deux et trois dimensions;

I Transformations lineaires en coordonnees homogenes;

I Composition de transformation;

A. Blondin Masse (UQAM) 9 janvier 2018 5 / 33

Page 6: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Description du cours (2/2)

I Transformation de perspective et modeles derepresentation;

I Trace de figures elementaires;

I Representation parametrique des objets en troisdimensions (courbes de Bezier, B-splines);

I Fonctionnalites typiques offertes par les bibliothequesgraphiques, par exemple, OpenGL;

I Autres sujets (selon le temps disponible) : modele delumiere, espace de couleurs, surface de Bezier, lancer derayons.

A. Blondin Masse (UQAM) 9 janvier 2018 6 / 33

Page 7: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Modalites d’evaluation

I Projet de session : jeu/application 3D :

I Presentation 1 [15%];

I Presentation 2 [25%];

I Remise electronique [10%];

I Deux devoirs [10%];

I Un examen [30%];

I Retard, absence et plagiat : voir le plan de courshttp://lacim.uqam.ca/˜blondin/files/inf5071/hiv2018/plan.pdf.

A. Blondin Masse (UQAM) 9 janvier 2018 7 / 33

Page 8: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Contenu detaille

1. Chapitre 1 : Introduction;

2. Chapitre 2 : Modeles et geometrie;

3. Chapitre 3 : Textures;

4. Chapitre 4 : Animations;

5. Chapitre 5 : Lumieres et ombres;

6. Chapitre 6 : Generation de modeles;

7. Chapitre 7 : Animations avancees;

8. Chapitre 8 : Materiaux 3D;

9. Chapitre 9 : Shaders;

10. Chapitre 10 : Illumination globale;

11. Chapitre 11 : Physique;

12. Chapitre 12 : Realite virtuelle

A. Blondin Masse (UQAM) 9 janvier 2018 8 / 33

Page 9: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Technologies et logiciels

Logiciels principaux:

I Blender;

I Godot;

I Krita;

Autres logiciels utiles:

I Inkscape;

I Gimp;

I Git;

Langage: Python (pour les devoirs).

A. Blondin Masse (UQAM) 9 janvier 2018 9 / 33

Page 10: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Formule du cours

I Typiquement, les cours enseignes a l’universite sont descours magistraux classiques;

I Dans ce cours, l’accent sera aussi mis sur lesdemonstrations;

I De temps en temps, jusqu’a 30% du temps de cours seraconsacre a l’illustration des concepts theoriques vus dans lapartie magistrale;

I Exemple : Au prochain cours, il serait preferable que vousinstalliez Blender, Krita et Godot;

I Il vous sera toujours possible de visionner les videos desseances de cours dans le cas ou une notion aurait ete vuetrop rapidement.

A. Blondin Masse (UQAM) 9 janvier 2018 10 / 33

Page 11: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Table des matieres

1. Presentation du cours

2. Introduction a l’infographie

3. Materiel et logiciels

A. Blondin Masse (UQAM) 9 janvier 2018 11 / 33

Page 12: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

L’espace euclidien

I Mathematiquement, l’espace euclidien est l’ensemble R3;

I Un element p ∈ R3 est appele un point de l’espace;

I Un point est souvent represente par un triplet decoordonnees p = (x, y, z), ou x, y, z ∈ R;

A. Blondin Masse (UQAM) 9 janvier 2018 12 / 33

Page 13: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Lieu geometrique

I Un lieu geometrique est un sous-ensemble de R3. Il peutpresenter differentes proprietes topologiques.

I Il peut etre connexe;

I Il peut avoir des trous;

I On peut calculer sa dimension, etc.

I Quelques exemples:

I 0D : point;

I 1D (longueur) : droite, courbe, helice, etc.

I 2D (aire) : plan, sphere, ellipsoıde, cylindre, etc.

I 3D (volume) : boule, cube, cylindre plein, etc.

A. Blondin Masse (UQAM) 9 janvier 2018 13 / 33

Page 14: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Modeles et maillage (1/2)

I Lorsqu’on affiche une variete a l’ecran, nous devonsutiliser des approximations;

I On utilise alors des maillages (en anglais, mesh);

I Un modele est une representation d’un objet a l’aide d’unou plusieurs maillages;

A. Blondin Masse (UQAM) 9 janvier 2018 14 / 33

Page 15: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Modeles et maillage (2/2)

Un maillage peut etre vue comme une structure de donneesabstraites selon l’usage qu’on souhaite en faire :

I Un ensemble de sommets (en anglais, vertices);

I Un ensemble d’aretes (en anglais, edges);

I Un ensemble de faces (en anglais, faces);

Mais eventuellement aussi d’autres informations pluspointues :

I Des vecteurs normaux;

I Des coordonnees de texture;

I Un canal de transparence;

I Des coordonnees de relief (en anglais, bump map), etc.

A. Blondin Masse (UQAM) 9 janvier 2018 15 / 33

Page 16: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Texture

I Un modele decrit la geometrie de l’objet;

I Ensuite, on peut lui appliquer une texture;

I Ce processus est appele plaquage de texture et peut etrevu comme une fonction

f : Modele → Couleur,

qui associe une couleur a chaque point du modele.

A. Blondin Masse (UQAM) 9 janvier 2018 16 / 33

Page 17: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Lumiere

I La prochaine etape consiste a eclairer correctement unescene;

I Il existe plusieurs types de lumiere;

I Il y a egalement plusieurs modeles de propagation de lalumiere;

I Ceux-ci sont bases sur l’algebre vectorielle et laphysique optique.

A. Blondin Masse (UQAM) 9 janvier 2018 17 / 33

Page 18: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Animations

I Bien qu’il puisse etre interessant de produire des imagesstatiques seulement, une branche importante del’infographie porte sur l’animation;

I Concretement, ceci revient a ajouter une 4e dimensionaux modeles, correspondant au temps;

I Par exemple, si un objet se deplace, alors on peut decriresa position a l’aide d’une fonction vectorielle

#»r : [tinit, tfin] → R3 : t 7→ (x(t), y(t), z(t))

I On peut egalement construire des animations pluscomplexes en suivant cette idee, combinee al’interpolation : transformations, deformation,acceleration, etc.

A. Blondin Masse (UQAM) 9 janvier 2018 18 / 33

Page 19: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Cinematique

I Bien que le type d’animation soit illimite, les principes dela cinematique sont souvent utilises dans les applicationsgraphiques;

I Des lois physiques (par exemple, les lois de Newton)decrivent le mouvement des solides dans l’espace;

I Ces lois impliquent les grandeurs physiques suivantes :

I La position, la vitesse, l’acceleration, mais aussi

I L’angle, la vitesse angulaire, l’accelerationangulaire,

I Les forces agissant sur un systeme,

A. Blondin Masse (UQAM) 9 janvier 2018 19 / 33

Page 20: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Vue

I En infographie, le monde 3D n’existe pas reellement,mais est plutot une abstraction;

I Pourquoi ? Parce que tout passe eventuellement parl’oeil, qui ne voit qu’en 2D;

I Plus precisement, chacun de nos yeux prend une photo2D de l’environnement;

I Puis notre cerveau combine ces photos pour nous donnerune idee des trois dimensions de notre environnement.

I Pour l’ordinateur, c’est la meme chose ! Ultimement, lerendu final n’est qu’une image 2D.

A. Blondin Masse (UQAM) 9 janvier 2018 20 / 33

Page 21: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Du 3D vers le 2D

I Nous devons donc etudier les transformations

P : R3 → R2.

I Ce type de transformation est appelee projection;

I Il en existe une infinite, mais les principales sont lesprojections

I perspectives;

I orthographiques et

I axonometriques.

I La plupart d’entre elles sont des transformationslineaires (ou peuvent etre approximees a l’aide detransformations lineaires).

A. Blondin Masse (UQAM) 9 janvier 2018 21 / 33

Page 22: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Projection perspective

I La projection la plus realiste (c’est-a-dire qui simule ceque l’oeil percoit) est la projection perspective;

I A noter qu’elle ne preserve pas les paralleles.

A. Blondin Masse (UQAM) 9 janvier 2018 22 / 33

Page 23: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Projection orthographique

I C’est une projection perpendiculaire aux axes;

I Par consequent, une dimension disparaıt completement;

I Moins realiste, car on ne distingue pas les objets prochesdes objets eloignes.

I Mais plus facile a manipuler.

A. Blondin Masse (UQAM) 9 janvier 2018 23 / 33

Page 24: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Projection axonometrique

I Aussi appelee pseudo-3D;

I Differentes variantes selon les angles choisis :trimetrique, isometrique, etc.

A. Blondin Masse (UQAM) 9 janvier 2018 24 / 33

Page 25: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Defilement parallaxe

I Une technique parfois utilisee consiste a faire defiler lescouches a differentes vitesses;

I Chaque couche est une projection orthographique, maissituee a une profondeur differente;

I Exemple : Wikipedia

(source de l’image)

A. Blondin Masse (UQAM) 9 janvier 2018 25 / 33

Page 26: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Scene fixe

I Si la scene est fixe, on peut utiliser une projectionperspective;

I Ou se trouve le point de fuite dans l’image ci-bas ?

(source de l’image)

A. Blondin Masse (UQAM) 9 janvier 2018 26 / 33

Page 27: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Table des matieres

1. Presentation du cours

2. Introduction a l’infographie

3. Materiel et logiciels

A. Blondin Masse (UQAM) 9 janvier 2018 27 / 33

Page 28: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Materiel

I (fortement recommande) Une souris a trois boutonsdont un a mollette:

I Plus efficace pour concevoir des modeles et pourconstruire des scenes;

I Un souris bon marche suffit (30$ et +).

I (optionnel) Une tablette graphique:

I Permet de concevoir des textures beaucoup plusfacilement;

I Utile aussi pour sculpter des modeles 3D;

I Plus couteux (100$ et +).

A. Blondin Masse (UQAM) 9 janvier 2018 28 / 33

Page 29: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Trois logiciels complementaires

I Un accent sera mis sur l’illustration des principes del’infographie;

I Trois logiciels libres tres pratiques qui interagissent bienensemble:

I Blender (modelisation, animations 3D, etc.);

I Godot (moteur de jeu).

I Krita (images, textures et animations 2D);

A. Blondin Masse (UQAM) 9 janvier 2018 29 / 33

Page 30: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Blender

I Logiciel de modelisation 3D;

I Premiere version publiee en 1995;

I Developpeur en chef: Ton Roosendaal;

I Support officiel par la Blender Foundation;

I Licence: GPLv2+

I Utilise dans la conception de plusieurs films, dont SpiderMan 2.

A. Blondin Masse (UQAM) 9 janvier 2018 30 / 33

Page 31: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Godot (1/2)

I Moteur de jeu 2D et 3D;

I Premiere version publiee en 2007;

I Developpeurs principaux: Juan Linietsky and ArielManzur;

I Developpement sur PC, mobile, console et sur le web;

I Licence: MIT.

I Langage: GDScript (langage maison).

A. Blondin Masse (UQAM) 9 janvier 2018 31 / 33

Page 32: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Godot (2/2)

Avantages:

I Completement libre;

I Supporte le 2D et le 3D;

I Plusieurs langagessupportes: GDScript,C++, C#, Python;

I Excellente interactionavec Blender;

I Excellente interactionavec le systeme defichiers (Git).

Inconvenients:

I Developpement rapide;

I Le 3D est moins matureque d’autres logiciels;

I Moins de ressources etde tutoriels;

I Nouveau langage aapprendre;

A. Blondin Masse (UQAM) 9 janvier 2018 32 / 33

Page 33: Introduction - Laboratoire d'algèbre, de combinatoire et ...blondin/files/inf5071/hiv2018/introduction.pdf · l’oeil, qui ne voit qu’en 2D; I Plus pr ecis ement, chacun de nos

Krita

I Logiciel de dessin digital;

I Permet de creer des textures, des images, desanimations 2D;

I Premiere version publiee en 2005;

I Preferable a utiliser avec une tablette graphique;

I Developpe par KDE (K Desktop Environment);

I Licence: GPLv2+.

A. Blondin Masse (UQAM) 9 janvier 2018 33 / 33