我正在尝试在场景中加载一个工作坊(glTF文件),但我得到的只是错误消息
未捕获(承诺)TypeError:无法读取GLTFLoader.js:2572上未定义的属性“ geometry”
我尝试在Three.js
编辑器和glTF Viewer中打开该文件,并且可以正常工作,我还使用glTF Validator检查了该文件,并说该文件有效,但是我不知道为什么不这样做与我一起。我还尝试用我的代码打开另一个在Internet上找到的glTF模型,它运行良好。
new Promise(function(resolve, reject) {
const manager = new THREE.LoadingManager();
const gltfloader = new THREE.GLTFLoader(manager);
gltfloader.setCrossOrigin('anonymous');
gltfloader.setDRACOLoader(new THREE.DRACOLoader());
gltfloader.load("data/gltf/salleTP/salleTP.gltf", function (gltf) {
const content = gltf.scene || gltf.scenes[0];
scene.add(content);
}, undefined, reject);
});
答案 0 :(得分:0)
似乎您正在使用three.js R102
和相应的GLTFLoader
版本。加载glTF
资产时,在GLTFLoader
中发生了一个已知错误,该错误已由R103
修复(请参见https://github.com/mrdoob/three.js/pull/15881)。将代码库升级到最新的three.js
版本后,您的资产即可正常加载。
three.js R104