GLB vs glTF vs FBX vs OBJ
四种格式覆盖您在 3D 工具间交付的几乎所有东西,它们互不兼容。重要区别在于材质是否完好、动画是否随之,以及纹理在文件内还是文件旁。
简短回答
glTF 是交付 3D 的现代开放标准,GLB 是 glTF 打包为纹理嵌入的单个二进制文件——GLB 是交付模型给某人的最安全默认。FBX 支持绑定和动画但是 Autodesk 专有格式。OBJ 古老、通用,仅存储几何:无动画、无真实 PBR 材质。
glTF 和 GLB
glTF 为传输而非创作设计——常被描述为「3D 的 JPEG」。它以引擎几乎无需转换即可加载的形式存储几何、PBR 材质、动画和场景结构,这就是为什么每个浏览器查看器都支持它。
两个扩展名之间的唯一区别是打包。.gltf 是引用其纹理和二进制数据为单独文件的 JSON;.glb 将所有内容捆绑为一个二进制。相同数据、相同功能——GLB 只是无法缺失其纹理,这让它在分享时是更好选择。
FBX
FBX 是动画和游戏世界的交换格式。它处理骨骼绑定、蒙皮、混合形状、摄像机和灯光,几乎每个 DCC 应用都读写它。
它也是 Autodesk 专有的,版本随时间变化,材质处理因导出器而异。FBX 会可靠地在工具间传输几何和动画;其材质应视为提示,而非合同。
OBJ
OBJ 可追溯到 1980 年代后期,仍是最通用可读的格式。它用纯文本存储顶点、面、法线和 UV——别无其他。
无动画、无场景层级、无 PBR。材质存在配套 .mtl 文件中,围绕早于现代工作流的旧镜面反射模型构建,所以 PBR 材质往返不会完好。OBJ 是静态网格的不错选择,其他任何东西的糟糕选择。
选择其中一种
交付完成的模型给某人,或将其放在网上:GLB。一个文件、材质包括、运输中无损失。
在 DCC 应用间移动绑定或动画角色:FBX,因为没有其他格式覆盖这片领地那么广泛。
与不知年代的工具分享静态网格:OBJ,理由是一切都读它。预计在另一端重建材质。
常见问题
GLB 和 glTF 之间有什么区别?
仅打包方式。.gltf 文件是指向单独纹理和二进制文件的 JSON;.glb 将所有内容打包为一个二进制文件。基础数据和功能相同。
网络上应使用哪种 3D 格式?
GLB。浏览器查看器和引擎本地加载这种格式,嵌入纹理意味着模型不会缺失纹理。
OBJ 支持 PBR 材质吗?
并非真的。OBJ 存储几何,其配套 .mtl 文件使用旧的镜面反射材质模型,所以基础色、粗糙度和金属度不会保留。导出 PBR 为 glTF 或 GLB。
FBX 能存储动画吗?
支持——骨骼动画、蒙皮和混合形状是 FBX 在 DCC 应用间作为角色工作标准的原因。
直接将 GLB、glTF、FBX 或 OBJ 导入 Mixos,在浏览器中贴图,导出任何引擎的干净 PBR 贴图集。