为了深入了解本主题并理解基础知识,有人可以指出我正确的方向吗?算法的哪一部分导致更逼真的渲染结果?
#1 楼
“分布式射线跟踪”一词最初是由Robert Cook在1984年的论文中提出的。他的观察结果是,为了在光线跟踪器中执行抗锯齿,渲染器需要执行空间上采样-也就是说,要获取比图像中像素数更多的样本(即,拍摄更多的光线)并合并其结果。例如,一种方法是在一个像素内拍摄多条光线并将其颜色值平均。但是,如果渲染器无论如何已经在每个像素中跟踪多条射线以获得抗锯齿图像,那么这些射线也可以“分布”在其他尺寸中,而不仅仅是像素位置以采样单条射线无法捕获的效果。重要的一点是,这在空间上采样的基础上没有任何额外的成本,因为无论如何您已经在追踪这些额外的光线。例如,如果您在像素内拍摄多条光线以计算出消除锯齿的结果,则还可以为每条光线使用不同的时间值(或者如果软阴影连接到点上的不同点,则可以使用软阴影),从而完全免费获得运动模糊。光源或景深(如果它们在光圈上使用不同的起点等)。蒙特卡洛射线追踪是一个有点含糊的术语。在大多数情况下,它是指由吉姆·卡吉亚(Jim Kajiya)于1986年使用蒙特卡洛积分解决求解渲染方程式的渲染技术。几乎所有解决渲染方程式的现代渲染技术(例如路径跟踪,双向路径跟踪,渐进光子映射和VCM)都可以归类为Monte Carlo射线跟踪技术。蒙特卡洛积分的思想是,我们可以通过在积分域中随机选择点并在这些点取函数值的平均值来计算任何函数的积分。在较高级别上,在蒙特卡洛光线追踪中,我们可以使用此技术对到达像素内的摄像机的光量进行积分,以计算像素值。例如,路径跟踪器通过在像素内随机拾取一个点以拍摄第一条射线来执行此操作,然后继续随机选择一个方向以继续在其着陆的表面上,依此类推。如果要进行运动模糊,也可以在时间轴上随机选择一个位置;如果要进行景深,我们可以在光圈上随机选择一个点;或者...与分布式射线跟踪非常相似,这是因为!我们可以将分布式光线跟踪视为对蒙特卡洛算法的非正式描述,该算法对诸如软阴影的某些效果进行采样。 Cook的论文缺乏数学框架来真正合理地对其进行推理,但是您当然可以使用简单的Monte Carlo渲染器来实现分布式射线跟踪。值得一提的是,分布式光线跟踪没有对全局照明效果进行任何描述,而在渲染等式中自然模拟了全局照明效果(应该指出的是,Kajiya的论文在Cook的论文之后两年出版了)。您可以将Monte Carlo射线跟踪视为分布式射线跟踪的更一般版本。蒙特卡洛射线追踪包含一个通用的数学框架,可让您处理几乎所有的影响,包括分布式射线追踪论文中提到的那些影响。用于引用原始算法。您会经常听到它与“分布效果”结合使用的情况,“分布效果”就是诸如运动模糊,景深或柔和阴影之类的效果,这些效果无法通过单样本射线追踪器处理。
#2 楼
在“分布式光线跟踪”中,您随机地对BRDF可能会或可能不会首选的方向上的光线进行采样。而在蒙特卡洛光线追踪或简单的路径追踪中,您只能沿BRDF首选的方向对一条光线进行采样。因此,路径跟踪具有两个明显的优势:计算上更便宜。这意味着与具有多条射线的分布式射线跟踪相比,使用相同的计算能力,您可以自由计算更多的对象命中。分布式射线跟踪在BRDF可能不喜欢的方向上对射线进行采样,因此会引入不需要的伪影。因此,路径跟踪将为您带来更好的结果。
评论
$ \ begingroup $
“然而,在蒙特卡洛光线追踪或简单的路径追踪中,您只能沿BRDF首选的方向对一条光线进行采样。”本身,您不知道如何选择射线。天真的方法使用随机射线。考虑到BRDF是重要性采样,而不是Monte Carlo射线跟踪或路径跟踪固有的。
$ \ endgroup $
– David Kuri
15年11月17日在10:20
$ \ begingroup $
我相信这个答案是完全错误的。您可以自由地对出射光线进行多重采样并在组合时加权其结果。您获得的真相与俄罗斯轮盘赌技术相同,但通常认为前一种方法更昂贵。
$ \ endgroup $
–v.oddou
16-3-24在5:27
#3 楼
蒙特卡洛积分是对构成像素的光进行综合的无偏估计器。虽然由于光线的数量是无限的,所以我们无法精确地模拟现实世界的光路,但是我们可以使用蒙特卡洛积分来估计期望值。这就是为什么它更现实的原因:从统计角度来看,蒙特卡洛射线追踪的期望是“真实的光路”。您可以阅读我的博客以获取更多数学细节。
评论
我想要的不仅仅是“一本扎实的书的推荐”,因为这个问题应该由知道这一点的人直接给出。我们应该尝试将信息放在网站上,而不是指向其他网站。@robobenklein问题已编辑,最好还是要小心;)
@ChristianRau删除“谢谢”应该在meta中讨论,这在每个堆栈交换站点上都是不同的...
@可怜,不是。那是无处改变的事情。而且,只要我们没有特殊规定,我们还是会采用一般的SE规定。但是即使那样,我也很难想象有人允许在这里投票。我从未在其他SE网站上看到过这种好的做法。