为什么在将OBJ导入Three.js时我得到没有子节点的单个对象?

时间:2014-01-27 03:05:31

标签: javascript three.js

我使用Three.JS的标准OBJLoader导入我的.OBJ文件。 问题是,我将我的模型作为单个对象上传,没有孩子。我得到完整的几何形状,一切都很好,只是,我想用网格将它分开。例如,我正在进口床,我想只移动床的左侧,或者从床上移动一个网。

这是我上传的文件: Test file.obj

你可以看到如果你将它加载到Three.js中,一切都很好,但它只是一个对象。但是,如果你看一下.OBJ文件,我将网格分开(例如:g akrMesh_65_65,g akrMesh_66_66 )。如何加载我的.OBJ文件,以便我用网格分隔对象?

2 个答案:

答案 0 :(得分:3)

当前版本的ObjLoader无法识别群组。

以下是您需要做的事情:

  1. 查看ObjLoader.js,以便了解为什么它无法正常工作。

  2. 有关此主题的一些历史记录,请参阅http://github.com/mrdoob/three.js/issues/2898

  3. 正如该线程所述,http://Clara.io能够导入OBJ文件并导出three.js JSON场景。这可能是你的解决方法。

  4. three.js r.65

答案 1 :(得分:1)

在Blender或其他程序中打开你的obj文件(@WestLangley提到看起来很酷的Clara.io)编辑它(删除你不想要的medshes)并导出为three.js JSON格式。