7 leçons · 72 min Intermédiaire

Three.js par les maths : la 3D sur le web, c'est des maths

J'ai enseigné les maths et la physique avant d'écrire du code. Ici, chaque notion du lycée devient un morceau de scène 3D que tu manipules : un vecteur fait tourner une tête, un sinus fait respirer un chat, un produit scalaire allume une lampe.

FR EN
Progression 0/7
1

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.

10 min
2

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.

10 min
3

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.

11 min
4

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.

10 min
5

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.

11 min
6

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.

10 min
7

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.

10 min

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.

Commencer la leçon 1

Gratuit · Sans inscription · 10 minutes