Three.js 未捕获(承诺中)类型错误:无法读取属性';几何学&x27;未定义的

Three.js 未捕获(承诺中)类型错误:无法读取属性';几何学&x27;未定义的,three.js,gltf,Three.js,Gltf,我正在尝试在场景中加载研讨会(glTF文件),但得到的只是错误消息 未捕获(承诺中)TypeError:无法读取GLTFLoader.js:2572处未定义的属性“geometry” 我试着在Three.js编辑器和glTF查看器中打开该文件,它成功了,我还用glTF验证器检查了该文件,它说该文件有效,但我不明白为什么它对我无效。我还尝试用我的代码打开另一个在互联网上找到的glTF模型,它运行得很好 new Promise(function(resolve, reject) { cons

我正在尝试在场景中加载研讨会(glTF文件),但得到的只是错误消息

未捕获(承诺中)TypeError:无法读取GLTFLoader.js:2572处未定义的属性“geometry”

我试着在
Three.js
编辑器和glTF查看器中打开该文件,它成功了,我还用glTF验证器检查了该文件,它说该文件有效,但我不明白为什么它对我无效。我还尝试用我的代码打开另一个在互联网上找到的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);
});

您似乎正在使用
three.js R102
和相应的
GLTFLoader
版本。加载
glTF
资产时,
GLTFLoader
中出现已知错误,该错误已通过
R103
修复(请参阅)。将代码库升级到最新的
three.js
版本后,您的资产可以正常加载


three.js R104

您似乎正在使用
three.js R102
和相应的
GLTFLoader
版本。加载
glTF
资产时,
GLTFLoader
中出现已知错误,该错误已通过
R103
修复(请参阅)。将代码库升级到最新的
three.js
版本后,您的资产可以正常加载


three.js R104

打开chrome调试器。。在“content=gltf.scene”行上放置断点。。重新加载应用程序。。当断点到达时,将鼠标悬停在“gltf”上并检查值。。从那里开始?从你描述的来看,似乎承诺还没有实现,你试图使用承诺实现时定义的东西。我的假设正确吗?它没有任何作用,因为错误发生在gltfloader.load函数上。如果我在加载上放置断点,则不会出现错误,但如果我继续,则会发生错误,并且无法查看内容。当我暂停此异常时,我可以看到“geometry”值未定义,但“geometry”不是空的,并且包含BufferGeometry!文件是否可能有多个几何图形,这就是它无法加载的原因?@Mugen87您可以从这里克隆存储库:打开chrome调试器。。在“content=gltf.scene”行上放置断点。。重新加载应用程序。。当断点到达时,将鼠标悬停在“gltf”上并检查值。。从那里开始?从你描述的来看,似乎承诺还没有实现,你试图使用承诺实现时定义的东西。我的假设正确吗?它没有任何作用,因为错误发生在gltfloader.load函数上。如果我在加载上放置断点,则不会出现错误,但如果我继续,则会发生错误,并且无法查看内容。当我暂停此异常时,我可以看到“geometry”值未定义,但“geometry”不是空的,并且包含BufferGeometry!文件是否可能有多个几何图形,这就是它无法加载的原因?@Mugen87您可以从这里克隆存储库: