Chaos
cn
登录
产品

拓展您的创意世界

探索 Chaos 生态系统

合集

云渲染

模拟

解决方案教育
Student Rendering Challenge 了解详情
用户社区支持

访问 Chaos 帮助中心

访问帮助中心

我的账户

Chaos Help Center


联系我们

学习资料作品集

理解自适应灯光

 

 

简介

 

Dabarti Studio 的 Tomasz Wyszołmirski 是 V-Ray for 3ds Max 测试者,最近测试了一项叫做 自适应灯光 的新技术,会在 V-Ray 3.5 版更新,他在他的网站对此撰写了 一篇博客 展示了新的自适应灯光技术有多快。

 

但是什么是自适应灯光?光线追踪确实能为我们提供最真实的灯光渲染,但这个算法本身也带来了挑战性。最常见的问题就是场景中有非常多的灯光时。当 V-Ray 3.0 问世的时候我们引入了新的技术解决这个问题,叫做概率灯光。在最新到来的升级包 V-Ray 3.5 中,我们会向大家带来改进的算法叫做自适应灯光。

为了更好地理解这个技术,我们详解一下在一个着色点评估灯光的不同算法。

 

完整灯光计算

 

这是我们在版本 3 以前处理灯光的方法。在这个方法中,每一条光线,我们都会评估每一个光源。再有5到10个灯光的场景,这一般都不是问题。但是在有 100 到 1000 个灯光的场景,这会大大拖慢你的渲染速度。

 

概率灯光

 

在这个算法中。每一支射线会随机选择固定数量的灯光光源。默认是16个光源,在示意图中我们假设这个数字是5。这会大大减少着色点的灯光计算数量。因为下一只射线又会选择其他五盏灯光,而我们总共会射出上百万射线,所以总体下来每个灯光都还会被采样的。一般来说,这个算法比起老的每次灯光都计算的算法会快一些。但是这个算法的一个缺点是有可能带来噪点,需要更多的采样才能抹平。而且有些着色点有可能会计算那些根本就不会照射过来,不会产生贡献的灯光。

 

自适应灯光

 

这个算法是基于概率灯光的,但是在选择评估灯光方面更聪明。它基于灯光缓存通道。灯光缓存通常是用于全局照明计算的,但是它同时也能让 V-Ray 对场景有一个准确的了解。最终的结果是,不再随机选择5个灯光,而是会选择5个对这个着色点影响最大的灯光。这就能帮助 V-Ray 更快地计算出干净的结果。

 

要说明的是,概率灯光仍然还是在计算大量灯光的时候的好选择。在大部分灯光多的场景中,它仍然很好用。但是基于灯光缓存结果更聪明地选择灯光,自适应灯光,一般来说结果更好。

在如下的案例中,我们测试一个有很多分隔的空间。我们在场景中放置168盏灯。我们会比较全灯光计算,概率灯光,和自适应灯光在三种情况下的表现。

 

低灯光

 

在第一个测试中,我们把灯光放置得相当低。因为场景中的墙,大部分灯光只影响附近区域。

 

 

中高灯光

 

我们把灯光提高到中等高度,灯光对周围影响更多。
 

 

高灯光

 

最后,我们把灯光提高到足够的高度,让灯光影响更多的场景。
 

 

所有图片都使用相同的噪点阈值,它们有相同的噪点水平,以下是测试结果:
 

场景 全灯光 概率灯光 自适应 概率/全 自适应/全 自适应/概率
低灯光 110s 166s 45s 150.91% 40.91% 27.11%
中灯光 56s 72s 25s 128.57% 44.64% 34.72%
高灯光 84s 43s 30s 51.19% 35.71% 69.77%

 


尽管这个试验的设计目的是展示自适应灯光的优势,它同时也展示了,在某些情况下,概率灯光有可能会带来噪点的增加。在相同时间,自适应算法有稳定的优秀表现。甚至在概率灯光表现优异的场景,自适应灯光仍然有更快的表现。

强烈推荐您访问 Tomasz Wyszołmirski 博客 查看全灯光 vs 概率灯光 vs 自适应灯光更详细的跑分对比。

ChaosEnscape
© 2022 Chaos Software 保留一切权利

Your shopping cart

There are no items in your cart.

Continue shopping
MasterCard
Visa
AmEx
JCB
Discover
PayPal