近年来,在网站和应用程序上查看 3D 内容的机会迅速增加。 无论是在三维空间中传达产品吸引力的电子商务网站,还是在虚拟空间中交互的元宇宙,还是将信息叠加在现实世界中的增强现实 (AR),3D 技术都在发展我们的数字体验,使其更加丰富和直观。glb下载官网( glbxz 商业网/)
在幕后,3D 内容的传播由一种名为“glTF”的文件格式支持。 glTF是一种标准格式,旨在在包括网络在内的各种平台上高效传输和显示3D模型,堪称“3D世界的JPEG”。 在本文中,我们将对glTF的基本概念进行全面而易于理解的解释,从与经常被混淆的glb的区别,它与其他3D文件格式的比较,具体的优缺点,以及如何实际创建和显示它。 阅读本文后,您将清楚地了解为什么 glTF 对于现代 3D 工作流程至关重要以及如何利用它。
glTF 是一种高效的 3D 资产传输格式。 最大的特点是它解决了传统 3D 文件格式面临的问题,并且特别针对在 Web 环境中的使用进行了优化。 让我们从几个方面仔细看看它的核心作用和背景。 3D 模型的标准文件格式 在数字内容领域,有广泛使用的“标准格式”,例如图像的 JPEG 和 PNG、音频的 MP3 和视频的 MP4。 由于这些格式,我们可以毫无问题地在不同设备和软件之间交换数据。 glTF 的开发旨在成为该 3D 模型的标准格式。 过去,在3D行业,每个制作软件(DCC工具)都有自己的文件格式,在不同工具之间交换数据时,需要经过FBX、OBJ等“中间格式”。 然而,这些中间格式最初是用于编辑目的的,因此它们往往包含大量不必要的数据并且文件大小较大。 此外,格式解释因软件而异,经常出现导入和导出时外观变化(显示塌陷)等问题。 glTF是一种“运行时格式”,它仅以紧凑的通用形式存储“最终显示(渲染)”所需的信息,以解决这些问题它被设计为。 从创建 3D 模型的 DCC 工具到实际显示的游戏引擎、Web 浏览器和 AR 应用程序,这可以在保持一致的外观的同时实现流畅的数据链接。 由于这种通用性和效率,glTF被称为“3D的JPEG”。 专门用于在网络上显示 3D 数据 glTF 设计理念的核心是一个明确的目的:优化 Web 的使用。 Web 浏览器不仅在 PC 上使用,还在智能手机和平板电脑等各种设备上使用,而且通信环境并不总是很快。 为了在如此严格的环境中舒适地体验丰富的 3D 内容,文件格式本身必须是特定于 Web 的。 glTF 通过以下功能实现了在 Web 上的快速显示。
由 Khronos Group 开发的开放标准 glTF 的可靠性和未来潜力得益于制定组织 Khronos 集团的存在。 Khronos Group 是一个非营利性联盟,致力于促进各种图形和计算 API 的标准化。 该组织包括 IT 和图形行业的许多领先公司,包括 Apple、Google、Microsoft、NVIDIA、AMD、Adobe 和 Epic Games。 Khronos 集团的标准规格包括:
因此,glTF 由 Khronos 集团管理,该集团在制定支撑行业支柱的多项标准方面有着良好的记录,这意味着 glTF 是一个真正开放和公平的标准,独立于任何特定公司或产品。 作为开放标准具有以下主要好处:
这种强大的后盾和开放性是许多公司和开发者愿意采用 glTF 的主要原因,整个生态系统正在迅速扩展。 如何阅读 glTF glTF的正式名称是“GL Transmission Format”。 “GL”是指Khronos集团开发的图形库(OpenGL和WebGL),“传输格式”是指它是一种用于传输(传输和接收)的格式。 至于如何阅读,最常见的是按原样阅读字母表并将其发音为“Zyltyev”。 名称本身清楚地描述了这种格式的核心作用,即“一种用于高效传输图形数据的格式”。 glTF 2 文件格式和 glb 之间的区别 使用 glTF 时需要了解的一件重要事情是存在两种文件格式:.gltf 和 .glb。 这两者都是 glTF 规范的一部分,但它们有不同的数据存储方式,并且每个都有自己合适的应用。 总之,在大多数情况下,建议使用 .glb 格式,例如用于 Web 交付。 .gltf:处理 JSON 格式的数据 .gltf格式是glTF的基本形式,其实质是JSON(JavaScript Object Notation)文件。 JSON是一种基于文本的数据描述语言,易于人类读写,广泛应用于Web API等应用中。 .gltf 文件主要包含有关“场景结构”的信息,例如:
重要的是,.gltf 文件本身不包含大文件大小的数据,例如定义 3D 模型形状的顶点数据(几何体)或粘贴到表面上的图像(纹理)。 这些数据存储为单独的外部文件。
你什么意思。 当您以 gltf 格式保存 3D 模型时,它通常由多个文件组成,例如“”和“”。model.gltfmodel.bintexture.png 这种格式的优点是可以直接在文本编辑器中打开和读取 JSON 部分,从而可以轻松查看和调试数据结构并进行简单的手动修改。 另一方面,由于它分为多个文件,因此易于管理,并且从Web服务器加载时对每个文件发出HTTP请求,这在传输效率方面是不利的。 .glb:处理二进制格式的数据 .glb该格式是为解决上述格式的文件管理和传输效率问题而设计的格式。 它的名字的意思是“GL Binary”,顾名思义,它将所有数据打包到一个二进制文件中。.gltf 具体说来。 在 glb 文件中,您会找到以下所有内容:
所有这些都根据预定的规则合并到一个文件中。 这种“全包”格式具有巨大的好处。.glb 最大的优点是文件合二为一,非常易于管理和分发。 只需一次拖放即可将其附加到电子邮件、上传到服务器或将其嵌入到应用程序中。 此外,在 Web 上,需要对服务器的单个 HTTP 请求非常重要,因为它是一个文件。 与生成多个请求的 .gltf 格式相比,这减少了网络开销并显着减少了 3D 模型加载时间。 另一方面,缺点是整个文件都是二进制格式,人类很难直接在文本编辑器中打开它来阅读和编辑内容。 要检查和编辑 glb 文件的内容,您需要专用的查看器或 3DCG 软件。 我应该使用哪种格式 现在您已经了解了 .gltf 和 .glb 的特点,让我们考虑选择哪种格式。 下表总结了两者之间的差异。
| 项目 | .gltf 域名 | .glb 域名 |
|---|---|---|
| 文件结构 | 分为 JSON 文件和外部文件(.bin、.png 等) | 将所有数据存储在一个二进制文件中 |
| 可读性 | 高(JSON部分可以用文本编辑) | 低(二进制格式) |
| 文件管理 | 复杂(多个文件) | 简单(单文件) |
| Web 传输效率 | 低(可能需要多个请求) | 高(需要单个请求) |
| 主要应用 | 开发、调试和分析数据结构 | Web 交付,嵌入到应用程序中 |
| 建议 | 具体开发场景 | 大多数用例 |
从下表可以清楚地看出,如果你想把它嵌入到你的最终应用程序中或在网络上分发它,.glb 格式是压倒性的优势。易于管理和高传输效率在实践中是非常显着的优势。 另一方面,在某些情况下,.glTF 格式可能很有用。例如,情况如下。
总之,最有效和推荐的工作流程是在生产和开发阶段根据需要使用 .gltf,但以 .glb 格式将最终可交付成果导出给用户。 glTF 与其他主要 3D 文件格式的比较 要了解 glTF 的真正价值,重要的是要清楚地了解 3D 行业中广泛使用的其他主要文件格式之间的差异,尤其是 FBX 和 OBJ。 glTF 取代和补充了这些格式所发挥的一些作用,同时在“发行”领域树立了新标准。

