报名参加即将到来的黑客马拉松大赛!奖金为总额超过 25 万美元的 MANA 和 LAND 。
X
你好,请选择
语言:
关闭

3D 模型要点

3D 模型以 glTF 格式导入到 decentraland 中。这些模型可以包含许多支持的功能。本节介绍如何使它们与Decentraland 兼容及最佳实践。

有关如何在 Decentraland 场景中配置 3D 模型的位置、缩放等的信息,请参阅实体位置

请记住,所有模型,着色器和纹理都必须在场景限制的参数范围内。

支持的 3D 模型格式

Decentraland 中的所有 3D 模型都必须采用 glTF 格式。 glTF (GL Transmission Format) 是 Khronos 的一个开源项目,为 3D 资产提供了一种通用的,可扩展的格式,既高效又可与现代网络技术进行高度互操作。

glTF 模型可以具有 .gltf.glb 扩展名。 glTF 文件是可读的,您可以在文本编辑器中打开它并像 JSON 文件一样读取它。例如,可以用来验证动画是否已正确附加并检查其名称。 glb 文件是二进制文件,所以它们不可读,但是文件要小得多,这对场景的性能有好处。

我们建议您在处理场景时使用 .gltf,但在上传时切换到 .glb

以下内容可以嵌入 glTF 文件中或从外部引用:

  • 纹理可以嵌入或从外部图像文件引用。
  • 有关几何、动画和模型的其他缓冲区相关方面的二进制数据可以嵌入或使用外部 .bin 文件引用。

注意:动画_必须_嵌入在_glTF_文件中以在 Decentraland 中使用。

在 Blender 中导出 glTF

默认情况下,Blender 不支持 glTF 格式导出,但可以安装插件来支持 glTF 格式导出。

  1. 首先下载Khronos Exporter
  2. 解压缩 .zip 文件,然后将 scripts/addons/io_scene_gltf2 目录复制到 Blender 安装目录的scripts / addons 文件夹下。
  3. 激活插件:在 Blender 中打开 User Preferences …。 在 Add-ons 选项卡中,启用 Import-Export: glTF 2.0 format。 不要忘记单击 Save User Settings。     > 注意:如果已安装有另外的 glTF 2.0 导出插件,请先将其禁用。 只能同时使用一个。

导出包含多个动画的 3D 模型时,请确保所有动画都嵌入到模型中。 为此,请打开 NLA editor 并单击 Stash 将每个动画添加到模型中。

导出带动画的模型时,建议使用以下导出设置:

Blender export menu

从 3D Studio Max 导出 glTF

默认情况下,3D Studio Max 不支持 glTF 格式导出,但可以安装插件来支持。

  1. 在此链接 下载插件。
  2. 按照说明 安装插件。
  3. 此说明使用插件导出 glTF 文件。

从 Maya 中导出 glTF

默认情况下,Maya 不支持 glTF 格式导出,但可以安装插件来获得支持。

  1. 按照这些说明安装插件。
  2. 此说明 导出 glTF .

注意:作为替代方案,您也可以尝试此插件

从 Unity 导出 glTF

默认情况下,Unity 不支持 glTF 格式导出,但可以安装插件来获得支持。

从此下载插件.

注意:作为替代方案,您也可以尝试此插件

从 SketchUp 导出 glTF

默认情况下,SketchUp 不支持 glTF 格式导出,但可以安装插件来获得支持。

从此下载插件.

预览 glTF 模型

在将 glTF 模型导入场景之前预览 glTF 模型内容的快速简便方法是使用Babylon.js Sandbox。 只需将 glTF 文件(及其 .bin 文件,如果有的话)拖放到画布中即可查看模型。

在 sandbox 中,要查看模型中嵌入的动画,可以从下拉菜单中选择要显示的动画。

为什么使用 glTF

与旧的只支持 vertices 顶点、normals 法线、纹理坐标和基本材质的 OBJ format 格式相比,

glTF 提供了一组更强大的功能,包括:

  • 分层对象
  • 骨骼结构和动画
  • 更强大的材质和着色器
  • 场景信息(光源,相机)

注意:作为遗留功能,Decentraland 场景支持 .obj 模型,但以后可能不再支持。

COLLADA 相比,支持的功能非常相似。但是,因为 glTF 专注于提供“传输格式”而不是编辑器格式,它与 Web 技术更具互操作性。

考虑这个类比:.PSD(Adobe Photoshop)格式有助于编辑 2D 图像,但必须将图像转换为 .JPG 才能使用。同样,在网络上,COLLADA 可用于编辑 3D 资源,但要在传输的同时进行渲染, glTF 是一种更简单的方式。

转换 fbx 到 glTF

.fbx 是一个非常流行的三维模型标准。 我们的引擎不支持,但您可以轻松地将 .fbx 模型导出为 .gltf 格式。

推荐使用以下工具:

  • Facebook’s CLI tool: 这是好的替代方案,只是需要使用命令行。

  • Blackthread: 这是最完整的基于 web 的工具。虽然没有 CLI 那么健壮,但是使用起来非常容易。

  • Modelconverter: 另一个易于使用的 web 工具.

glTF 优化

以下工具提供一些 glTF 优化功能,能使三维模型更轻便,让您的场景中的玩家更快地下载。

glTF pipeline

除此之外,它将 .gltf 格式转换为 .glb,它是二进制的,因此占用的空间要小得多。 它还将纹理文件放置在 3D 模型之外,这允许您在多个模型上使用相同的纹理。

注意: 默认情况下,.glb 格式总是在文件中嵌入纹理。引擎无法识别相同的两个嵌入纹理,它们需要的是共享相同散列的外部文件。

参阅

以下页面介绍了相关的 Decentraland 3D 模型: