FBX文件结构解读【文本格式】

您所在的位置:网站首页 动画数据的文件格式 FBX文件结构解读【文本格式】

FBX文件结构解读【文本格式】

2024-07-13 09:51| 来源: 网络整理| 查看: 265

FBX 格式几乎受到所有 3D 引擎的支持,是 Autodesk 开发的 3D 模型的专有格式。它支持顶点、索引、法线、UV坐标、材质和动画。

FBX还支持许多其他类型的信息,但它们对游戏引擎几乎没有用处。

在这里插入图片描述

推荐:用 NSDT编辑器 快速搭建可编程3D场景

有两种可行的方法可以将 FBX 文件支持集成到引擎中:

使用 Autodesk 官方的 FBX SDK,它允许导入和导出 FBX 文件或具有相同用途的其他库。 SDK 公开了两个接口,一个是 C++ 接口,另一个是 Python 接口。编写自定义 FBX 解析器,避免对其他库的依赖。

第一种方法很简单:只需下载 SDK 并按照文档进行操作即可。 请注意,FBX SDK 的使用并不像人们想象的那么简单。

我将在本文中介绍 FBX 文件的结构。 对它的理解允许我们编写一个自定义的、轻量级的解析器。 有关自定义 FBX 解析器的示例,你可以查找 Blender 的 FBX 导入器/导出器插件。

然而,由于该格式是专有的,因此该格式的公共规范不可用。 尽管如此,FBX SDK 仍包含一些标头,部分揭示了格式的布局。

格式可以是 ASCII(文本文件,人类可读)或二进制形式。

因此,从第一个表示更容易推断出格式的结构是什么,以及我们需要的信息(几何、材质等)在哪里。

首先,我将展示如何从 FBX ASCII 文件获取基本几何信息。 如果你在实际实现方面需要帮助(此处未涵盖),请随时询问我,我将尽最大努力通过伪代码甚至 C 语言帮助你。如果你解析FBX的目的是为了转换为其他格式,那么可以直接使用NSDT 3DConvert这个强大的 在线3D格式转换工具,支持FBX、GLTF、GLB、OBJ、DAE、STL、PLY等数十种3D格式:

在这里插入图片描述

1、FBX文件结构

这是一个 示例 FBX 文件。

首先要注意的是,有些行以分号开头:这些是注释,在读取文件时必须忽略。

在初始注释之后,找到了标识符 FBXHeaderExtension。 这是文件结构的第一个主节点。 FBX 文件格式确实是遵循以下方案的树结构:

在这里插入图片描述

每个节点或子节点都可以有自己的特定属性。 属性也可以在主节点之外找到,但通常可以忽略。 一般来说,节点的基本结构如下:

node name: eventual_properties {


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3