阴影 / 3ds Max

这里介绍了在Verge3D中为3ds Max设置漂亮的实时阴影的设置方法和最佳实践。

内容

准备Max视口设置

建议按照本节所述设置Max的视口,让配置阴影更加容易。

启用以下视窗选项。

阴影过滤类型

使用不同的阴影图过滤算法,会在Verge3D场景生成明显差异的阴影。位于Verge3D导出设置面板上的阴影过(Shadow filtering)属性是用来指定该算法的。

Basic - 基本

禁用过滤,按原样渲染阴影贴图。这是渲染阴影的最快的方法。

Bilinear - 双线性

使用双线性滤波平滑相邻阴影贴图像素。

PCF

Percentage Closer Filtering,代表 "百分比近距离过滤"。使用多个阴影贴图查询以实现平滑的阴影渲染。质量和性能一般。

PCF (Bilinear) - 双线性PCF

与PCF类似,但对每个阴影贴图查询使用双线性插值。在牺牲更多计算能力的情况下提供平滑的阴影。

PCF (Poisson Disk) - 泊松碟采样PCF

使用伪随机 泊松碟 采样来消除PCF阴影的像素化。这被作为默认设置,因为它最符合您在3D编辑器视口中看到的效果。其性能与双线性PCF算法相当或更好。

ESM

Exponential Shadow Maps,代表指数阴影贴图。阴影是最平滑的,但有可能出现漏光。在灯光上使用 ESM偏移 设置来消除漏光伪影。其性能与双线性PCF算法相当。ESM阴影的设置可能特别棘手,因此请参见 故障排除 章节中的ESM相关问题。

选择哪种过滤类型?

建议首先尝试默认的 泊松碟PCF 阴影,因为它们具有良好的质量和性能。如果您需要质量较低但速度更快的阴影,请尝试 基础双线性。如果您需要更好的质量、更柔和的阴影,可以尝试 ESM ,但缺点是它们对于特定场景的设置(伪影方面)可能很棘手。

全局设置

阴影的全局设置位于Verge3D Export Settings菜单中。

阴影过滤
阴影贴图过滤算法。见 上文
ESM距离比例(ESM Distance Scale)
ESM阴影的缩放系数。由于ESM过滤算法使用的是绝对距离值,如果您正在处理的场景比默认的立方体大得多,那么就减少这个比例值,如果您的场景小得多,就增加这个比例。默认为0.3。只对 ESM 阴影作用。

每个灯光的设置

可以使用3ds Max的原生面板为每个单独的灯光启用或禁用阴影。支持的阴影设置以绿色突出显示。


目标距离
可以影响阴影停止渲染的距离。只适用于聚光灯和平行光。只有在处理故障排除部分中的阴影剪切问题时才需调整它。
开启
启用/禁用阴影。
阴影贴图
必须在下拉菜单中选择阴影,才能在Verge3D中出现。
衰减区/区域
定义阴影量(越少越好)。只适用于聚光灯和平行光。
偏移(Bias)
可以调节以消除自阴影伪影及 "peter-panning" 效果。注:Peter Panning这个词的名字来源于童话人物彼得潘(他的影子与身体分离并且可以飞翔),此伪影使对象看起来像是悬浮在地表。
尺寸
控制阴影纹理的大小(在速度和质量之间进行平衡)。
采样范围
控制阴影的模糊度比例。
阴影偏移(Shadow Bias)
类似于偏移的额外偏移设置。用于消除自阴影伪影及 "peter-panning" 效果。
ESM偏移(ESM Bias)
偏离一定数值以减少ESM的 漏光 伪影。只对 ESM 阴影作用。

每个对象的设置

您也可以在每个对象的基础上启用和禁用接收和投射阴影。

接收阴影(Rceive Shadows)
启用/禁用此对象的阴影接收。
投影
启用/禁用此对象的阴影投射。

您可以查看以下视频了解如何在3ds Max中设置阴影。

另请看Autodesk的官方文档,了解更多信息和最佳实践方法。

故障排除

Verge3D中的阴影和Max视口中的阴影看起来不同

阴影看起来太像素化了

阴影在Max视口中是可见的,但在Verge3D中却看不到。

阴影有伪影

阴影没有半影区或半影区很小

来自聚光灯和平行光的阴影被剪掉了

ESM阴影看起来变淡了

ESM的阴影看起来太尖锐或没有半影

ESM阴影有伪影

遇到问题?

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