每一篇关于SSAO的文章都以“剂量准确地产生现实结果”作为结尾。我们可以用阴影映射获得更精确的阴影,而无需存储纹理或均匀阵列所需的额外内存来进行采样或额外的模糊传递以减少条带,那么为什么还要使用SSAO呢?
我还看到了一些结合SSAO和影子映射的教程,对我来说,这似乎是过火了。这两种技术都是产生阴影的,对吗?
发布于 2021-01-12 13:48:38
发布于 2021-01-12 15:41:53
阴影映射和屏幕-空间环境遮挡解决渲染方程的不同部分,因为他们作出了不同的假设。
顾名思义,“屏幕空间”( Screen-Space Ambient Ambient)假设,光线从我们采样点的半球上方的每一个可能的方向均匀地照射到那个点。也就是说,为了解决环境遮挡问题,我们需要在样品点的半球上积分一个恒定的函数(辐照度),以确定从周围光源遮挡的半球的固体角度的分数。
在单词Screen-Space Ambient Ambient中也有一个短语“屏幕-空间”。这意味着,为了计算被均匀环境光源遮挡的采样点半球的部分,我们所做的计算仅仅是基于我们在屏幕空间(而不是世界空间)准备好的信息,例如通过进行分析光线投射/跟踪场景几何--当然,我们可以这样做,但这样就不再被称为屏幕-空间环境遮挡了。
因此,环境遮挡(哪个屏幕-空间环境遮挡是一种方法来近似根据我们呈现到屏幕空间的信息):
另一方面:阴影映射。这是一种技术,对我们的取样点的辐照度事件作出了一个完全不同的假设。在这里,我们不假定光来自样本点半球以上的所有方向,而是假定光来自单个方向(或者当我们近似于软阴影时,该方向周围有一个很小的固体角度)。
为了解决这一问题,我们可以从光的方向对场景进行采样,然后测试我们的取样点是否从该光的方向接收到光。
https://stackoverflow.com/questions/65682401
复制相似问题