Pour mettre en place un visuel avec THREEJS, il faut plusieurs éléments. Une scène, qui englobe l'ensemble des autres éléments. Un mesh qui est composé d'une géométrie et d'un material. Une caméra qui représente ce que l'utilisateur voit. Un système de render (comme sur blender) qui permet de donner vie aux éléments cités plus haut. Un mesh, une camera, et une scène sont des Object3D Il faut ajouter les éléments dans une scène. const scene = new THREE.Scene() (bien penser à la majuscule); const mesh = new THREE.Mesh({ new THREE.MeshBasicMaterial({color : #FFFFFF, wireframe : true (si on veut, pas nécessaure)}), new THREE.BoxGeometry(1, 1, 1) (pour exemple, 1 en largeur, 1 en hauteur et 1 en profondeur, xyz) }) ensuite, on ajoute la mesh dans la scène pour qu'elle soit ensuite ajouté dans le renderer. scene.add(mesh) Le renderer que j'ai utilisé est WebGLRenderer. pour la camera, elle attend des paramètres, le FOV (Field of View) et le ratio. Le FOV est vertical et non horizontal comme on a l'habitude de voir. Pour le ratio, on créer un petit object contenant la width et la height, on y accède simplement et on divise la width par la height. const camera = new THREE.PerspectiveCamera(FOV (par défaut 50) , width / height) scene.add(camera) Pour effectuer des transformations il existe : position / rotation et quaternion / scale Excepté rotation qui est un euler, ce sont des Vector3, ils héritent de la classe Object3D. Les Objects3D on des méthodes en commun, on peut par exemple utiliser la méthode position ou scale et changer l'axe (X / Y / Z). D'ailleurs les axes ne sont pas les mêmes que sur blender. X right and left, Y up and down, z back and forth. On peut donc changer la position d'un élément simplement en accédant à la méthode, par exemple : mesh.position.x = 2. Si l'on veut changer plusieurs axes en même temps : mesh.position.set(x, y , z) Cette valeur 2 utilisé est abstraite. Au début d'un projet, on se met d'accord sur une unité et on l'applique tout le long.