Chapitre 21 — Coordonnées, Canvas et dessin 2D
Partie 2A — Les fondamentaux du jeu 2D · Chapitre 21 sur 62 · 7 h
Chapitre 21 — Coordonnées, Canvas et dessin 2D
Niveau : intermédiaire Durée estimée : 7 h Pré-requis : chapitre 19 (Flutter en accéléré,
CustomPainter) et chapitre 20 (boucle de jeu,Ticker, delta time) Ce que vous saurez faire à la fin : dessiner n'importe quelle scène 2D à la main avecCanvasetPaint, la positionner au pixel près dans le repère de l'écran, la transformer (translation, rotation, échelle) et l'animer avec ledtde la boucle de jeu.
21.0 — Objectifs du chapitre
À la fin de ce chapitre, vous serez capable de :
- expliquer pourquoi l'axe
Yde l'écran est orienté vers le bas, contrairement au repère mathématique ; - situer l'origine
(0, 0)d'une zone de dessin et raisonner en coordonnées locales ; - distinguer un pixel logique d'un pixel physique et utiliser
devicePixelRatio; - lire la taille de la zone de dessin transmise à
paint()et vous y adapter ; - manipuler
Offset,RectetSize, les trois types de base de la géométrie Flutter ; - anticiper la différence entre
Vector2(Flame) etOffset(Flutter) ; - écrire un
CustomPainterpropre, avec unshouldRepaint()correct ; - configurer un objet
Paint: couleur, style, épaisseur de trait ; - dessiner des rectangles, cercles, lignes, ellipses, rectangles arrondis, chemins et points ;
- dessiner du texte dans un
CanvasavecTextPainter; - construire des couleurs en ARGB et appliquer une transparence ;
- appliquer un dégradé linéaire ou radial à une forme ;
- expliquer et exploiter l'ordre de dessin (« algorithme du peintre ») ;
- utiliser
save()/restore()sans jamais déséquilibrer la pile ; - appliquer
translate(),rotate()etscale(), et comprendre pourquoi leur ordre compte ; - dessiner une forme autour de son centre plutôt que de son coin (notion d'ancre) ;
- limiter le dessin à une zone avec
clipRect(); - expliquer le double buffering et pourquoi l'écran ne clignote pas ;
- identifier ce qui coûte cher dans
paint()et l'éviter ; - dessiner une grille de donjon et un personnage entièrement en formes géométriques ;
- animer un dessin avec le
dtdu chapitre 20.
Commentaires
Les commentaires sont alimentés par GitHub Discussions
Connectez-vous avec GitHub pour participer à la discussion