Brute Force(暴力算法)的GI引擎原理比较简单,和无偏差渲染器的光线计算原理基本一致,可调节的参数较少,方便调节,但是计算速度慢。但是质量是所有GI引擎里面最好的。
光子光线都是以现实物理的方式进行反弹和采样。
可以尝试理解一下暴力算法的采样信息获取逻辑:
- 我们从O点摄像机发射光线,之后碰撞到A点,记录A点的信息传递到B点。
- B点这个时候会将A点的信息进行混合,然后传递给C点。
- 然后C点再混合B点给到的信息传递到最终的灯光。
但是我们这样看就会发现,这样的逻辑很奇怪,为什么最终的采样信息是给到光源,因此最终我们需要把这个信息进行反转。那么我们刚好就可以沿着以上推导的路线返回到摄像机。
首次引擎和二次引擎都可以使用暴力计算的方法,一般暴力计算用作与首次计算。保证第一次光线反弹的精准度。
- Trace Depth:二次反弹光线能够反弹的次数,如果为1,那么相当于没有二次反弹。
- Conserve Reflections Energy:保护反射光线计算。Redshift当前在“全局照明”计算期间不支持反射光线的采样,这可能导致能量损失。选中“保存反射能量”选项可启用近似的反射光线计算,该方法将在GI计算过程中将损失的反射能量(即反射颜色)添加到材料的漫反射色中。这样就产生了反射光线反弹的错觉。
- Brute Force Rays:暴力计算发射光线的数量,数量越多那么采样也就越高,噪点也就越少。
- 优点:
- 计算结果非常准确
- 动画中不会因为光子问题产生闪烁
- 参数简单就只有一个光线数量控制
- 不需要储存光子信息
- 缺点:
- 计算速度是所有引擎里面最慢的,但是Redshfit主要使用显卡计算,所以速度还可以。
- 需要大量的光线增加采样的计算,不然噪点很多。