1

我使用 convert-to-threejs.py 将 FBX 模型转换为 JSON,但我无法让 three.js (r58) 加载它。它说“未捕获的类型错误:无法读取未定义的属性‘长度’”。错误在 three.js 的第 9930 行,哪一行是for ( i = 0; i < json.uvs.length; i++ ) ...

这是转换后的 JSON: http: //pastebin.com/86ZGvKnW。你会看到它实际上没有uvs属性。

convert-to-threejs.py 过时了吗?如果是这样,有什么替代方案?如果没有,我怎样才能加载这个模型?

这是我的代码:

window.loader = new THREE.JSONLoader();
loader.load('jet.json', function(geometry) {
    // Never gets to here; error is thrown first
    console.log(geometry);
});
4

2 回答 2

0

转换为 JSON 的 FBX 文件似乎描述了完整的场景。所以,代替THREE.JSONLoader,使用THREE.SceneLoader

例如

  var scene = new THREE.Scene();
  var camera = new THREE.PerspectiveCamera(...);

  var loader = new THREE.SceneLoader();
  loader.load('jet.json', function(res) {
      scene.add(res.scene);
      renderer.render(res.scene, camera);
  });
于 2013-12-22T10:44:31.927 回答
0

我懂了。实际模型嵌入在该 JSON 文件中。我想要embeds["Embed_31_jet 3"]

于 2013-05-31T04:04:03.517 回答