用于3ds Max的Verge3D：glTF PBR材质 - Soft8Soft
Description: 如何在Verge3D for 3ds Max中设置符合glTF标准的PBR材质。

# glTF PBR材质 / 3ds Max

如果您的内容出于某种原因需要与glTF 2.0标准完全兼容，您需要使用简化的材质设置。此设置基于一组有限的3ds Max节点，这些节点应按照以下说明相互连接。

使用glTF兼容材质制作的场景示例。

有关使用示例，请查看 GLTF Compat 演示（也可在资源商店中找到）。

## 内容

- 设置
- 色彩空间和Gamma校正
- 从Substance Painter导出纹理
- 基于glTF Material的替代设置
- 基于Usd Preview Surface材质的替代设置
- 在运行时中导出到glTF

#

## 设置

如下添加一个 Physical Material 着色器节点：转到 Materials/Map Browser 并从 General 材质列表中选择 Physical Material。

然后您可以按照下面的描述将纹理节点连接到 Physical Material。请注意，所有纹理都是可选的，其中任何一个都可以安全地省略。

- 将 Ambient Occlusion 纹理连接到 Base Weight Map 输入。为了使3ds Max视口和Verge3D之间有更好的一致性，您也可以将 Ambient Occlusion 纹理连接到 Refl Color Map 输入，但这不是必须的。
- 将 Base Color 纹理连接到 Base Color Map 输入。
- 将 Roughness 纹理连接到 Roughness Map 输入。
- 将 Metallic 纹理连接到 Metalness Map 输入。
- 将 Normal 纹理连接到 Normal Map 节点，然后将其连接到 Physical Material 的 Bump Map 输入。您还应该将 Physical Material 的 Special Map 面板中的 Bump Map Amount 值设置为1.0。
- 将 Emission 纹理连接到 Emission Color Map。您也应该在 Physical Material 属性的 Basic Parameters 面板中将发射因子设置为1.0。
- Transparency 贴图将从 Base Color 纹理的Alpha通道获取。

### 透明度纹理

如果 Base Color 纹理中的 Alpha 通道存在，引擎将自动使用它作为透明度贴图。要使透明度在3ds Max视口中可见，请将 Base Color 纹理的 Alpha 通道连接到 Transparency Color Map 输入。

此外，在纹理的 Preferences 的 Bitmap Parameters 面板中，您应该将 Mono Channel Output 设置为 Alpha，将 RGB Channel Output 设置为 Alpha as Gray。

#

## 色彩空间和Gamma校正

为了进行正确的渲染，需要注意为图像选择正确的色彩空间。除了 Base Color 和 Emission 纹理外，所有图像都必须以线性色彩空间呈现。要做到这一点，当您在 Open Image 对话框中打开图像时，选择 Override Gamma 并将其值设置为1.0（如下图所示）。

相反，Base Color 和 Emission 纹理必须在sRGB色彩空间中打开（Gamma 2.2）。为此只需在 Open Image 对话框的Gamma偏好中保留 Automatic 即可。

#

## 从Substance Painter导出纹理

模型和烘焙的法线贴图及遮蔽贴图（如果有的话）可以通过OBJ格式加载到Substance Painter中。

在这个软件中，最终产生了3张贴图：底色/透明度、遮蔽/粗糙度/金属度和法线。

为了方便从Substance Painter导出纹理，并确保Verge3D引擎的最佳能力，我们建议使用 Verge3D导出预设。将此预设文件放到通常位于 My Documents\Allegorithmic\Substance Painter\shelf\ 目录下的 export-presets 文件夹中（如果不存在就新建一个）。

当从Substance Painter导出纹理时，在导出对话窗口中选择 Verge3d for 3ds Max，这样所有生成的纹理都与Verge3D所采用的glTF 2.0标准兼容。

#

## 基于glTF Material的替代设置

Verge3D导出器插件也支持3ds Max的 glTF Material 材质，通过将其直接转换为glTF 2.0兼容的PBR模型。

如下添加一个 glTF Material 着色器节点：转到 Materials/Map Browser 并从 General 材质列表中选择 glTF Material。

然后您可以按照以下方式连接纹理节点。请注意，所有纹理都是可选的，其中任何一个都可以安全地省略。

1. 将 Base Color 纹理连接到 Base Color Map 输入。
2. 将 Transparency 纹理连接到 Alpha Map 输入，否则alpha通道将从 Base Color Map 中获取。
3. 将 Metallic 纹理连接到 Metalness Map 输入。
4. 将 Roughness 纹理连接到 Roughness Map 输入。
5. 将 Normal 纹理连接到 Normal Map 输入。
6. 将 Occlusion 纹理连接到 Occlusion (AO) Map 输入。

您也可以通过启用对应的复选框来使用glTF 2.0扩展。

您可以导出所有扩展，但Verge3D仅支持 Unlit Material（用于使着色独立于光照）。

#

## 基于Usd Preview Surface材质的替代设置

您可以使用这些材质使3ds Max场景同时兼容glTF 2.0和USD格式。您可能需要安装"USD for 3ds Max"插件，该插件可从Autodesk账户的"Product Updates"中获取。

指定 Usd Preview Surface 材质节点。Verge3D中支持以下设置：

- Diffuse Color
- Metallic
- Roughness
- Occlusion
- Normal Map
- Emissive Color
- Opacity
- Opacity Threshold

然后您可以按照以下方式连接纹理节点。请注意，所有纹理都是可选的，其中任何一个都可以安全地省略。

1. 将 Diffuse Color 纹理连接到 Diffuse Color Map 输入。
2. 将 Metallic 纹理连接到 Metallic Map 输入。
3. 将 Roughness 纹理连接到 Roughness Map 输入。
4. 将 Occlusion 纹理连接到 Occlusion Map 输入。
5. 将 Normal 纹理连接到 Normal Map 输入。

#

## 在运行时中导出到glTF

通过 export to gltf 拼图，您可以实时导出模型或整个场景。然后您可以下载导出的模型或上传到服务器进行永久存储。请查阅拼图的参考了解详情。

## 遇到问题？

欢迎您随时在 论坛上提问！您还可以加入中文用户社区QQ群(171678760)，在线寻求帮助。