V-Ray 7 新增了 V-Ray Luminaires 渲染方法,可以在很短的时间内快速渲染复杂的灯具。Vlado 为我们详细介绍了它的工作原理。
逼真的灯具效果对于创建照片级真实感的视觉效果至关重要——无论是室内还是室外场景。在现实世界中,这些灯具通常是光源与周围漫射、透射或反射表面的复杂组合,以实现理想的光线分布。然而,精确模拟这些灯具的整体照明效果是一项计算密集型任务,因此通常会简化这些灯具的模拟,以在合理的时间内获得结果。
大多数 Chaos 产品都包含 Cosmos 资产库。在资产库中,提供了许多灯具模型,而其中一些是由生产这些灯具的公司提供。因此,为了能够在 3D 场景中真实呈现产品,这些模型以逼真的方式建模。然而,尽管这些模型非常精确,但渲染起来可能会有些挑战。
V-Ray 7 中新增的 V-Ray Luminaires 提供了一种全新的方法,可以高效、精准地渲染此类灯具。在预计算阶段,我们会先计算灯具周围非常准确的光场——即从灯具表面向任何特定方向发出的光量,并将其存储在相应的 Cosmos 模型的附件中。当从 Cosmos 库中导入模型时,除了会创建几何体和光源外,还会创建一个名为 VRayLuminaire 的新光源类型。这种光线涵盖了灯具的部分区域,可以在外部观察时,模拟出灯具的光线效果。VRayLuminaire 通过预计算的光场,还可以控制灯具的整体光照效果,并且还可以调整灯光的颜色和强度。
以下是一个简单设置的示例,其中场景由两个灯具照亮。每个灯具包括一个光源,光源被一个灯罩包围,这种设计在现实生活中很常见。
如果我们在没有灯具光场帮助的情况下渲染它,结果将如下所示:
未使用灯具光场文件,渲染耗时 21 分 50 秒
生成的采样率
在 AMD Threadripper 2990WX CPU 上渲染该场景的时间约为 22 分钟。尽管使用了 1/40 AA 细分,结果仍旧有很多噪点,而且图像中大部分像素,尽管都达到了每个像素的最大采样数(在采样率渲染元素中显示为红色像素),但仍未达到设定的噪点阈值。这是因为很大一部分照明是由于光从灯罩内部反射到场景中而产生的。此外,默认情况下 V-Ray 会对部分 GI 进行钳制,以在合理的时间内完成渲染(该功能由“最大射线强度 Max ray intensity”参数控制)——但这会导致灯具的照明略显暗淡。
另一方面,如果我们借助灯具光场来渲染同一场景,结果将如下所示:
使用灯具光场文件,渲染耗时 1 分 1 秒
生成的采样率
使用灯具光场文件后,渲染速度显著提升(由 22 分钟缩短至 1 分钟),并且最终效果中的噪点更少,几乎所有区域都达到了噪点阈值。此外,光照分布也更加精准,没有因钳制而导致光照损失。
另一个示例展示了 VRayLuminaire 在需要计算复杂光传输路径时的优势。在下方的示例中,灯具使用了薄纸材质,用于散射内部球灯发出的光线。这种情况对任何渲染器而言都较为复杂。在没有 luminaire 的情况下,图像渲染速度非常慢,颜色也会偏暗——默认情况下,V-Ray 会钳制 GI 射线的贡献,以帮助缩短渲染时间。如果我们想获得更准确的灯具光照效果,就必须禁用“最大射线强度(Max ray intensity)”参数,这让渲染结果更接近预期亮度,但计算时间也会随之增加。即使使用 1/100 的自适应图像采样,图像中仍有部分区域未达到所需的噪点阈值(在采样率渲染元素中存在红色区域)。相比之下,使用 VRayLuminaire 可以在更短的时间内,渲染出具有更准确的光照分布图像。
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.
未使用 VRayLuminaire,启用最大射线强度,渲染耗时 53 分钟
未使用 VRayLuminaire,禁用最大射线强度,渲染耗时 2 小时 46 分钟
使用 VRayLuminaire,渲染耗时 1 分 11 秒
未使用 VRayLuminaire,启用最大射线强度,渲染耗时 53 分钟
Chaos Cosmos 中的大多数灯具都附带 luminaire 文件,因此只需拖放即可使用。如果某个灯具没有 luminaire 文件,可能是该模型不包含光源,或者添加 luminaire 对于改善效果不明显(例如,光源直接照亮场景且无复杂光线传输)。关于为自定义灯具创建 luminaire 文件的教程即将发布。
使用 VRayLuminaire 光源
如果灯具附带 VRayLuminaire 对象,则建议通过 VRayLuminaire 对象来控制和调整灯具发出的光(如强度和色温)。然而,目前禁用 VRayLuminaire 光源仅会禁用光场计算,而不会影响灯具内的常规光源。要禁用灯具发出的所有光线,可将 VRayLuminaire 灯光的强度设为 0.0.
同样在 VRayLightMix 系统中,灯具内的原始光源和 VRayLuminaire 光源会分开显示。这一点将在后续的 V-Ray 7 版本中得到改进。