gpt4 book ai didi

javascript - Three.js无法加载素材(无法读取未定义的属性 'length')

转载 作者:行者123 更新时间:2023-12-03 09:21:50 25 4
gpt4 key购买 nike

我仍在学习 Three.js,并且遇到了一个阻碍我进步的问题。

由于某种原因,我已经搜索了几天,但找不到对我有帮助的答案。

问题是我无法导入 JSON 模型的 Material 。我总是收到“无法读取未定义的属性‘长度’”,我不明白为什么。

我用来导入的代码非常简单,如下所示:

var loader = new THREE.ObjectLoader();
loader.load( "island.json", function ( geometry, materials ) {
mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) );
scene.add( mesh );
render();
} );

我尝试导入的 JSON 文件很大,因此我制作了一个小得多的示例,它也碰巧遇到了相同的错误。 Here it is

希望大家能帮帮我!

非常感谢!

最佳答案

JSON 代码不是问题,而是您混淆了 JSONLoaderObjectLoader

JSONLoaderObjectLoader 都接受 JSON,但它们的结构不同。改为这样做:

var loader = new THREE.ObjectLoader();
loader.load("island.json", function(object){
scene.add(object);
});

在此处查看更多信息:http://helloenjoy.com/2013/from-unity-to-three-js/

关于javascript - Three.js无法加载素材(无法读取未定义的属性 'length'),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31816504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com