Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

可用的 3D 文件格式

在处理 3D 资产时,Godot 有一个非常灵活且可配置的导入器。

Godot 使用 场景 工作。这意味着用你最喜爱的 3D 软件制作的整个场景可以尽可能完整地被导入。

Godot 支持以下 3D 场景文件格式

  • glTF 2.0 (推荐使用)。Godot 完全支持文本(.gltf)和二进制( .glb )格式。

  • .blend (Blender)。这是通过调用 Blender 以透明方式导出到 glTF 来实现的(需要安装 Blender)。

  • DAE(COLLADA),一个受支持的比较老的格式。

  • OBJ(Wavefront)格式 + 它们的 MTL 材质文件。这也是完全支持的,但由于格式的限制支持相当有限(不支持轴心、骨架、动画、UV2、PBR 材质……)。

  • FBX,通过 FBX2glTF 集成提供支持。这需要安装链接到专有 FBX SDK 的外部程序,因此我们建议使用上面列出的其他格式(如果适合你的工作流程)。

将场景文件连同纹理和网格数据(如果是单独的)复制到项目仓库,然后当聚焦编辑器窗口时,Godot 将执行完全导入。

直接在 Godot 中导入 .blend 文件

备注

此功能需要 Blender 3.0 或更高版本。为了获得最佳结果,我们建议使用 Blender 3.5 或更高版本,因为它包含了对 glTF 导出器的许多修复。

强烈 建议使用从 Blender.org 下载的官方 Blender 版本,而不是 Linux 发行包或 Flatpak。这可以避免与打包相关的任何问题,例如可能导致不兼容或沙箱限制的不同库版本。

从 Godot 4.0 开始,编辑器可以通过透明方式调用`Blender <https://www.blender.org/>`__ 的 glTF 导出功能来直接导入 .blend 文件。

这样可以使你更快地迭代 3D 场景。你可以将场景保存在 Blender 中,按 Alt + Tab 返回 Godot,然后立即查看更改。使用版本控制时也更有效,你不再需要将导出的 glTF 文件的副本提交到版本控制。

要使用 .blend 导入,必须在打开 Godot 编辑器之前安装 Blender(如果打开已包含 .blend 文件的项目)。如果你将 Blender 安装在默认位置,Godot 应该能够自动检测其路径。如果你不是这种情况,请在编辑器设置中配置包含 Blender 可执行文件的目录的路径( 文件系统 > 导入 > Blender > Blender 3 路径 )。

如果你希望将 .blend 文件保留在项目文件夹中,但不让 Godot 导入它们,请在高级项目设置中禁用 文件系统 > 导入 > Blender > 启用

.blend 导入过程会首先转换为 glTF,因此它仍然使用 Godot 的 glTF 导入代码。因此, .blend 导入过程与 glTF 导入过程相同,但在开始时会有一个额外的步骤。

解释 Godot 中 Blender 文件导入过程的图表

备注

请记住,在团队中工作时,在项目中使用 .blend 文件意味着要求 所有 团队成员都安装 Blender。虽然 Blender 是免费下载的,但这也依然可能会增加项目工作时的摩擦。 .blend 导入在 Android 和 Web 编辑器上也不可用,因为这些平台无法调用外部程序。

如果有以上问题,请考虑使用从 Blender 导出的 glTF 场景。

从 Blender 导出的 DAE 文件

Blender 也有内置的 COLLADA 支持,但它无法正常工作以满足游戏引擎的需求,因此不应按原样使用。但是,使用内置 Collada 支持导出的场景可能仍然适用于没有动画的简单场景。

对于复杂场景或包含动画的场景,Godot 提供了一个 Blender 插件,它可以正确导出 COLLADA 场景供 Godot 使用。

在 Godot 中导入 OBJ 文件

OBJ 是最简单的 3D 格式,Godot 应该能够成功导入大多数 OBJ 文件。不过 OBJ 格式的限制也很多:不支持蒙皮、动画、UV2、PBR 材质。

在 Godot 中使用 OBJ 网格的方法有两种:

  • 直接将它们加载到 MeshInstance3D 节点,或任何其他需要网格的属性(例如 GPUParticles3D)中。这是默认模式。

  • 在导入面板中将其导入模式更改为 场景 ,然后重新启动编辑器。这会允许使用与 glTF 或 Collada 场景相同的导入选项,例如在导入时展开 UV2(对于 使用光照贴图全局照明)。

备注

Blender 3.4 及更高版本可以导出 OBJ 文件中的 RGB 顶点颜色(这是 OBJ 格式的非标准扩展)。自 Godot 4.0 起,Godot 能够导入这些顶点颜色,但除非在材质上启用 Vertex Color > Use As Albedo ,否则它们不会显示在材质上。

OBJ 网格的顶点颜色在导入后会保留其原始颜色空间(sRGB/线性),但其亮度被限制为 1.0(这些颜色不能过亮)。

在 Godot 中导入 FBX 文件

打开包含 FBX 场景的项目时,你将看到一个对话框,要求配置 FBX 导入。单击对话框中的链接下载 FBX2glTF 二进制文件,然后解压 ZIP 存档,将二进制文件放置在你想要的任何位置,然后在对话框中指定其路径。

如果你将 .fbx 文件保留在项目文件夹中,但不希望 Godot 导入它们,请在高级项目设置中禁用 文件系统 > 导入 > FBX > 启用

FBX 导入过程中会首先转换为 glTF,因此过程仍然使用 Godot 的 glTF 导入代码。所以可以说,FBX 导入过程与 glTF 导入过程相同,但在开始时多了一个额外的步骤。

解释 Godot 中 FBX 文件导入过程的图表

参见

在 Godot 网站的 FBX 导入页面 中描述了在 Godot 中使用 FBX 的完整安装过程。