У меня проблема с зависимостью объектов. Я хочу, чтобы один объект зависел от двух других объектов. Если я изменяю позицию одного родительского объекта (например, y-Position), зависимый объект (дочерний объект) должен вращаться и должен также перемещаться.Webgl three.js Зависимость нескольких объектов
Вот ссылка, где я понял это на картинке. С левой стороны находится начальное состояние, справа - измененное состояние. Цилиндр должен зависеть от двух коробок. Это означает, что цилиндр является дочерним объектом, а ящики должны быть как родительскими объектами этого дочернего объекта. Я пробовал его с использованием родительских и дочерних свойств, но я не мог сделать дочерний объект зависимым от двух родительских объектов.
Может кто-нибудь мне помочь?
Это мой текущий код, но LookAt функция не работает правильно.
//cube 1
var cube=new THREE.BoxGeometry(4,4,4);
var material=new THREE.MeshBasicMaterial ({ color: 0xffffff });
mesh1=new THREE.Mesh(cube,material);
mesh1.position.set(-2,2,0);
scene.add(mesh1);
//cube 2
var cube2=new THREE.BoxGeometry(2,2,2);
var material=new THREE.MeshBasicMaterial ({ color:0x000000 });
mesh2=new THREE.Mesh(cube2,material);
mesh2.position.x=6;
mesh2.position.y=2;
//mesh2.position.y=-2;
scene.add(mesh2);
//cylinder
var cylinder=new THREE.CylinderGeometry(1,1,6,30);
var material=new THREE.MeshBasicMaterial({ color:0xff3399 });
mesh3=new THREE.Mesh(cylinder,material);
mesh1.add(mesh3);
mesh3.lookAt(mesh2.position);
Я не думаю, что это даст желаемый результат как в вашем примере, перемещение куба 1 будет перемещать цилиндр и куб2 на ту же сумму – 2pha