【问题标题】:loading model with Three.js使用 Three.js 加载模型
【发布时间】:2012-08-11 05:11:32
【问题描述】:

我有一个 3ds 格式的 3d 模型。我将其转换为 obj 格式,然后转换为 js 格式。现在我想将它加载到另一个 js 文件中。这是我的加载代码:

var loader = new THREE.JSONLoader();
loader.load( { model: "untitled.js", callback: createScene } );



function createScene( geometry ) {

geometry.materials[0][0].shading = THREE.FlatShading;
geometry.materials[0][0].morphTargets = true;

var material = new THREE.MeshFaceMaterial();

var mesh = new THREE.Mesh( geometry, material );
mesh.scale.set(50, 50, 50);

scene.addObject( mesh );
}

Web 开发者控制台显示错误:TypeError: a.split is not a function Three.js:119

我该如何解决这个问题? 谢谢

【问题讨论】:

  • 你是用什么来制作js文件的? (是 JSON 3 模型格式吗?) ref:github.com/mrdoob/three.js/wiki/JSON-Model-format-3.0
  • 我使用blender和不同的python插件文件并将其导出为js文件
  • 看你的代码我也看不出来,不过好像和解析有关,试着注释一下createScene的内容,看看是否还有错误。如果仍然有问题,则 json 创建是错误的。您可以尝试手动修复它...
  • 错误仍然出现,即使 createScene 内容被注释了

标签: javascript three.js


【解决方案1】:

应该改为:

loader.load( "untitled.js", createScene );

【讨论】:

  • 现在它说 geometry[0][0].materials 未定义。我认为 untitled.js 文件不行
猜你喜欢
  • 2015-01-14
  • 2013-09-07
  • 2020-08-24
  • 1970-01-01
  • 2013-05-28
  • 2021-12-15
  • 2013-04-04
  • 2020-06-21
  • 2017-08-10
相关资源
最近更新 更多