今天用Threejs开发时,遇到了模型设置位置的问题。
这是我的装载机Gltf模型代码👇(typescript)。
const loadGltf = (url: string, name: string) => {
loader.load(url, (gltf) => {
const object = gltf.scene.children[0]
object.name = name
object.position.set(0, 0, 0)
if (scene) {
scene.add(object)
scene.add(new THREE.BoxHelper(object, new THREE.Color(0xffff00)))
}
})
}
但是... 场景是这样的
我查了很久的文件,但是没有相关的说明,我该怎么解决这个问题呢,如果你了解,可以告诉我吗?
我认为你要加载的gtf模型的原点设置为远离对象本身。如果这是您创建的模型,请尝试在Blender或类似程序中打开它,并确保其原点位于模型本身。
当你在threejs中调用yourObject.position.set()时,它将相对于3D形状的原点,而不是你视觉上看到的物理对象。