Three.js中ObjLoader和ObjLoader2之间的区别

fsi*_*i90 8 3d .obj three.js

这两个类ObjLoaderObjLoader2之间的主要区别是什么?

在哪种情况下我们应该使用一个或另一个?

为什么有两个班?一个比另一个更稳定或更有效吗?

当我阅读文档时,对我来说并不是很清楚.

2ph*_*pha 8

我有时也想知道这一点.
所以我决定这次跳下兔子洞(当我走下洞时写下这篇文章).

这是我发现的.

  • OBJLoader2的第一次提交的注释是"添加了基于Geometry2的OBJLoader".由mrdoob看到这里.
  • Geometry2似乎已成为一些实验的一部分,将几何的易用性与BufferGeometry的性能结合起来.可以在这里查看提到Geometry2的问题.
  • OBJLoaderOBJLoader2最近都有提交.
  • 所有最近的提交似乎都来自一个人(kaisalmen)

所以,在我看来,OBJLoader2是一个更高性能的OBJ文件加载器.看一下主提交者的github页面会显示一个专门用于OBJLoader2类的存储库.
这里有作者github存储库中的OBJLoader2类的文档


欧阳维*_*阳维杰 5

目前,主要区别在于 OBJLoader2 支持 Web Worker 进行异步加载。它为用户提供了同步和异步之间的选择。


phr*_*ead 5

在这里找到了创建者的一些有趣的比较

???????????????????????????????????????????????????????????????
? Feature                            ? OBJLoader ? OBJLoader2 ?
???????????????????????????????????????????????????????????????
?Handle all face types               ?     x     ?     x      ?
?Support for points and lines        ?     x     ?     x      ?
?Negative face indices               ?     x     ?     x      ?
?Support Ngons                       ?     x     ?     x      ?
?Flat/Smooth Multi-Materials         ?           ?     x      ?
?Indexed Rendering                   ?           ?     x      ?
?Handle Face-Type change inside group?           ?     x      ?
?Deactivate console logging          ?           ?     x      ?
?Load MTLs via MTLLoader if desired  ?           ?     x      ?
???????????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)