我想要拖动这两个GLTF对象
{const gltfLoader = new GLTFLoader();
const url = 'resources/models/bookshelf2/bookshelf2.glb';
gltfLoader.load(url, (gltf) => {const root = gltf.scene;
scene.add(root);});
const url2 = 'resources/models/bookshelf2/bookshelf2.glb';
gltfLoader.load(url2, (gltf) => {const root2 = gltf.scene;
scene.add(root2);
root2.position.set(10,0,0);});
const dragcontrols = new Dragcontrols([root, root2], camera, renderer.domElement);}我收到一个错误。未定义根。如何使用Dragcontrols拖动对象?
发布于 2021-07-02 15:14:21
问题是,您不需要等待GLTF模型完成加载。
执行回调时,应将3D对象添加到控件中。
这应该会纠正您的问题:
{
const gltfLoader = new GLTFLoader();
const url = 'resources/models/bookshelf2/bookshelf2.glb';
gltfLoader.load(url, (gltf) => {
const root = gltf.scene;
scene.add(root);
const url2 = 'resources/models/bookshelf2/bookshelf2.glb';
gltfLoader.load(url2, (gltf) => {
const root2 = gltf.scene;
scene.add(root2);
root2.position.set(10, 0, 0);
const dragcontrols = new Dragcontrols([root, root2], camera, renderer.domElement);
})
})
}https://stackoverflow.com/questions/68219152
复制相似问题