首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对Three.js使用Json而不是obj有什么好的理由吗?

对Three.js使用Json而不是obj有什么好的理由吗?
EN

Stack Overflow用户
提问于 2017-09-03 06:16:41
回答 1查看 871关注 0票数 1

我正在使用三个3D加载一个3D对象。有不同的加载器,一个是使用JSON文件,另一个是使用OBJ文件。我想知道使用JSON (示例1)而不是OBJ文件(示例2)是否有什么好处。

代码语言:javascript
复制
Example1 loading JSON:

var loader = new THREE.PlayCanvasLoader();
                loader.load( './models/playcanvas/hand.json', function ( model ) {...

Example2 loading OBJ:
                var loader = new THREE.OBJLoader( manager );
                loader.load( 'obj/brain.obj', function ( object ) {...
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-03 06:30:30

以下是选择格式时的三个标准:

  1. 功能。OBJ (Wavefront)是一种较旧的格式,不支持动画、PBR材料、灯光、摄像机等许多特性。我不熟悉PlayCanvas JSON格式,但它可能会做更多的事情。
  2. 工作流程。取决于您在哪里获得模型,以及如何(或是否)计划更新它们,某些格式更容易导出,并且不太容易出错。例如,Autodesk软件可以自己导出FBX。如果你有一些有用的东西,可以坚持下去。
  3. 性能。某些格式可以比其他格式更快地加载。OBJ在这里可能处于较慢的一端。但是场景的运行时性能--在模型加载之后--无论如何都是一样的,所以这并不总是一个问题。

还请注意,three.js支持多种JSON格式。THREE.JSONLoaderTHREE.ObjectLoader都接受与THREE.PlayCanvasLoader不同类型的JSON。这些JSON格式在three.js中运行良好,但在Maya或Blender这样的建模工具中导入和编辑将更加困难。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46020821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档