用于3ds Max的Verge3D：透明度 - Soft8Soft
Description: 了解在3ds Max和Verge3D中可以使用材质中哪些类型的透明度。

# 透明度 / 3ds Max

在这里，我们展示了如何在3ds Max中为Physical、OpenPBR、Standard和glTF兼容的PBR材质启用和调整透明特性。

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

- 混合与蒙版
- 加法合成（又称加法混合）
- 顺序无关透明度（OIT）
- 物理材质的透明度
- 标准材质的透明度
- glTF兼容的PBR材质的透明度

#

## 混合与蒙版

作为一个实时渲染3D引擎，Verge3D提供了两种主要的方法来处理透明物体：alpha混合和alpha剪切（通常需要一个图像蒙版）。混合法(blending)可以将一个半透明的前景色与背景色结合起来，使用前景色的alpha作为混合系数。相对而言，剪切法(clipping)只是简单地丢弃所有alpha值小于某个预定义阈值的像素（在Verge3D for 3ds Max中总是等于0.5）。

混合可以实现平滑过渡，通常看起来更漂亮，但计算成本比剪切高。当多边形以错误的顺序被渲染时，它也可能产生Z向排序的伪影。剪切法更适合用于可视化大量小物体的场景（如草和树叶）。但它会产生没有任何过渡的硬边缘，可能会出现锯齿。

使用材质设置中的 Alpha Mode 下拉菜单，在混合和遮蔽之间进行选择。

还有一种 Mask 模式的变体称为 Coverage。它使用MSAA渲染来提高alpha剪切的质量。

#

## 加法合成（又称加法混合）

Verge3D还提供了一种特殊的透明表面渲染方法，称为加法合成。通过以加法方式混合并将多边形排除在像素深度比较之外，可以消除透明度伪影。

在 Alpha Mode 下拉菜单中选择 Add，并取消勾选材质设置中的 Depth Write 选项以启用该模式。此外，您还需要增大 对象设置 中的 Rendering Order 值，使透明对象渲染在所有其他对象之上。

#

## 顺序无关透明度（OIT）

Verge3D允许使用近似的顺序无关透明度技术，该技术不需要按排序顺序渲染几何体，因此无需上述任何考虑即可解决大多数透明度问题。

OIT可以在 Verge3D导出设置 对话框中启用。

已知限制：

- OIT仅兼容WebGL 2，否则无效。
- OIT被反射立方体贴图光照探针和反射平面光照探针忽略。
- 在高不透明度对象上可能效果不佳。
- 不应与包含2个或更多不透明对象的场景中的 MSAA（多重采样抗锯齿）一起使用。相反，您可以使用 FXAA（快速近似抗锯齿），它与OIT完全兼容。

#

## 物理材质的透明度

Physical（以及OpenPBR）材质的透明度可以通过同名的材质设置进行调整。

参数：

Transparency
  透明度的权重、颜色和粗糙度。颜色和粗糙度参数只支持基于折射的透明度（Thin-walled 关闭时）。
Thin-walled
  使用通用的（Thin-walled 打开时）或基于折射的（Thin-walled 关闭时）透明度。
Alpha Mode
  材质的透明度模式。
  Auto
    查看材质以解析可能的透明度方法：Opaque 或 Blend。
  Opaque
    渲染材质时不带透明度。
  Blend
    混合透明度（参见上文）。
  Add
    加法透明度合成（参见上文）。
  Mask
    蒙版透明度（参见上文）。
  Coverage
    哈希透明度，又称alpha to coverage。此方法介于蒙版和混合透明度之间。它使用MSAA渲染来提高alpha剪切的质量。
Transparency Hack
  启用两种非标准渲染方法之一来消除透明度伪影：
  Nearest Layer
    通过使用单独的深度缓冲区进行剔除（又称"深度预处理"），仅渲染最靠近摄影机的透明层。
  Two-Pass
    先渲染背面表面，然后渲染正面表面。此方法仅适用于双面材质，即应设置 2-Sided 属性。
  两种透明度技巧都会降低性能，因此仅在真正需要时使用。
Depth Write
  禁用以启用加法透明度合成（参见上文）。

在3ds Max中，默认情况下 Thin-walled 参数是关闭的，这会使得在网页应用中的渲染与您的预期不同，最典型的透明度渲染会失效。当您处理透明的物理材质时，一定要留意这个设置。

可以将贴图和图像的任意组合连接到 Transparency Map 输入节点，来影响透明度。

#

## 标准材质的透明度

标准材质的透明度可以通过材质设置中的 Opacity 进行调整。

可以用标准材质的 Opacity 输入创建有趣的依赖关系，以获得更好的真实感。

可使用在alpha通道中含有透明信息的图像作为输入。也可以使用一个单独的alpha图像。

使用 Alpha Mode 下拉菜单来选择透明模式。

#

## glTF兼容的PBR材质的透明度

为了使此类材质具有透明度，需要使用一个 单独的 alpha贴图与物理材质的 Transparency Map 输入相连。

使用 Alpha Mode 下拉菜单来选择支持的透明模式：Auto、Opaque、Blend 或 Mask。

## 遇到问题？

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