Я использую три библиотеки. js для работы с 3D-моделями (в основном .glb, но это не имеет значения)
Идея состоит в том, чтобы импортировать 3D-модель, которая содержит группы и сетки. Я хочу иметь возможность перемещать сетки между уже существующими группами в модели без изменения визуального представления модели. Часть моего кода ниже. moveInternal - это
movedMesh.matrixWorldNeedsUpdate = true; // not sure if it's needed
let meshPosition = new THREE.Vector3();
movedMesh.getWorldPosition(meshPosition);
oldParent.remove(movedMesh);
newParent.add(movedMesh);
movedMesh.worldToLocal(meshPosition);
movedMesh.position.set(meshPosition.x, meshPosition.y, meshPosition.z);
И это не работает. Я sh меняет свою глобальную позицию, потому что позиция нового родителя не совпадает с предыдущей родительской позицией, но я ожидаю, что она останется там, где была, но изменит свою локальную позицию с учетом позиции нового родителя.
Что мне делать неправильно?