Tous les articles

Three.js : la caméra et sa cible

Une semaine bloqué sur un concept évident : plutôt que de bouger la caméra, on bouge sa cible. Retour sur un déclic pour tout débutant en 3D.

Three.js : la caméra et sa cible

J'ai passé une semaine bloqué sur un concept tellement évident que j'ai mis du temps à le comprendre : la caméra et sa cible.

Que ce soit dans la vie ou dans une réalité virtuelle, une caméra a toujours une cible ; pendant un temps donné, elle bouge et tourne autour d'elle. Un changement brusque et non transitionné de cette cible donne une expérience désagréable — sauf si c'est scénarisé.

La solution évidente : pourquoi bouger la caméra si elle suit une cible ? Il est plus intéressant de bouger la cible. Mais dans une scène, tout objet ne peut pas changer de position. Je me suis alors demandé : quelle est la cible initiale de ma caméra ? Le centre du monde ? Un rayon de soleil ? 🌚

En fouillant les propriétés de ma caméra, j'ai découvert que la cible était en fait un vecteur invisible positionné au centre de la scène — t(0, 0, 0) par défaut. Une cible que je peux déplacer à volonté, avec de bonnes transitions. J'en parle parce que tout débutant en 3D ou en Three.js peut tomber sur ce genre de blocage.

[object Object] — 2[object Object] — 3