J'essaie de comprendre comment regrouper/lier des maillages enfant à un parent. Je veux pouvoir:
Ma seule expérience dans ce domaine est l'utilisation de LSL dans Second Life pour manipuler des prims liés dans un objet. Je pense que je ne veux pas fusionner les maillages, car je veux garder le contrôle (survol, texture, rotation, mise à l'échelle, etc.) sur chaque enfant.
De bons tutoriels à ce sujet? Ceci est réalisé avec THREE.Object3D (), oui?
merci, Daniel
Le glissement sera un peu plus délicat car vous devez déterminer où seraient les positions x/y de la souris sur l'écran (espace d'écran) dans le monde 3D, alors vous devrez lancer un rayon et vérifier s'il coupe l'objet que vous souhaitez faire glisser. Je suppose que ce sera une question différente.
La définition de la hiérarchie des objets est assez simple. Comme vous l'avez laissé entendre, vous utiliserez une instance THREE.Object3D pour imbriquer des objets en utilisant sa méthode add () . L'idée est que vous utiliserez un maillage pour les objets qui ont une géométrie et des instances Object3D, où vous avez simplement besoin d'imbriquer des éléments. Je suggère de commencer par l'exemple canvas_geometry_hierarchy .
Les bits intéressants sont:
group = new THREE.Object3D();//create an empty container
group.add( mesh );//add a mesh with geometry to it
scene.add( group );//when done, add the group to the scene
d'une autre manière, car un maillage peut aussi être un parent
meshParent.add(meshChild1);
meshParent.add(meshChild2);
scene.add(meshParent);
ou
mesh1.add(mesh2);
mesh3.add(mesh1);
scene.add(mesh3);
mesh3 manipule toutes les mailles, mesh1 se manipule et mesh2, mesh2 se manipule