threejs 中的 glTFLoader 与 ObjLoader?

glTFLoader vs ObjLoader in threejs?

我一直使用 .obj 文件将模型加载到 three.js。 我在某处读到,首选方法是现在使用 .gltf。

当我开始这样做时,我意识到虽然使用 gltf 加载对象看起来确实很简单,但一旦对象在内部,obj 似乎更加灵活。

诸如此类的事情:

这些在 gltf 中似乎都很困难/不受支持,您可以使用 obj 轻松完成它们。

gltf 的具体优势是什么?我假设文件大小,但似乎您必须为此放弃很多控制权。

我认为 .obj 与 gltf 没有任何优势。 Obj 不容易支持层次结构..它不支持现代材质,不支持着色器,不支持 lights/cameras..不支持几何组。 Obj 基本上是一种糟糕的格式,除了它是人类可读的(文本 gltf 也是)。另外.. gltf 支持网格压缩...压缩纹理格式。二进制缓冲区,带有嵌入式资源的单个文件导出。 Obj 格式来自 70 年代后期的 iircs。 Gltf 是 real-time 3d 领域 4 多年进步的产物,专为 Web 3d 资产交付而设计。