La scène, la caméra et le repère
Trois axes, une caméra, un angle de vue. Pourquoi le haut est y, ce que change le fov, et pourquoi near et far existent. Ta première scène à manipuler au curseur.
Les vecteurs : position, direction, distance
Additionner, mesurer, normaliser, et le produit scalaire qui répond à « est-ce qu'il me regarde ? ». Une tête de chat qui suit ton pointeur.
Translation, rotation, échelle : les matrices
La matrice 4x4 qui range position, rotation et taille. Pourquoi l'ordre compte, et comment une queue de chat suit son corps grâce à la hiérarchie.
sin et cos : orbites, respiration, scintillement
Amplitude, période, phase : trois nombres pour faire respirer un chat, balancer des boules de Noël et faire tourner une luciole. Plus lerp et easing.
Gravité, rebond, frottement : les boules tombent
La méthode d'Euler en trois lignes, le coefficient de restitution, le frottement exponentiel et le roulement sans glisser. Et pourquoi un grand dt fait tout exploser.
Lumière et matériaux : Lambert, ombres, bloom
Lambert, c'est un produit scalaire : n·l. L'émissif, le tone mapping et le bloom qui font briller un chat de feu ou de glace.
La couleur est un vecteur : k-means et pipette
Un pixel est un point dans un cube RGB. Distance, moyenne, et l'algorithme k-means qui devine le pelage d'un chat à partir de sa photo.
Ce que vous allez apprendre
Placer un objet et une caméra dans un repère, et régler fov, near et far sans tâtonner
Manier vecteurs, normes et produit scalaire pour viser, mesurer et détecter un regard
Composer translations, rotations et échelles, et animer avec sin, cos et lerp
Simuler gravité et rebonds, éclairer avec Lambert, et extraire des couleurs avec k-means
Prérequis : les bases de JavaScript (variables, fonctions, objets). Côté maths, rien que tu n'aies vu au lycée, et chaque formule est réexpliquée. Les démos tournent dans ton navigateur avec WebGL, et elles ne se chargent que quand tu cliques dessus.
Envie de voir où mènent ces maths ? Le Labo 3D montre les deux scènes complètes qui servent d'exemples tout au long du cours.