VTK 9.0中的屏幕空间环境光遮挡
概要
当在VTK中渲染几何形状时,我们现在可以通过新引入的PBR阴影获得出色的结果。我们只需要正确配置灯,HDRI和材料即可。但是,借助像CAD型号这样的复杂表面,明显缺少某些东西,渲染图像看起来是假的,如图所示。
算法
我们的深度感知对环境阻塞高度敏感。孔,折痕,凹面表面被周围的几何形状阻塞。计算照明时必须考虑这一点。在VTK 9.0中,我们添加了一个新的渲染通道,称为屏幕空间环境闭塞(SSAO)。这项由Crytek于2007年推出的技术是用于近似环境阻塞的射线跟踪的有效替代方法。虽然只有近似值,但它会实时产生非常合理的结果。下图显示了在RTX 2060 GPU上以150fps渲染的复杂几何形状(〜3M体素)。
为了计算环境闭塞,渲染通过修改polydatamapper,以在新的GPU纹理中保存像素位置和正态。 SSAO算法使用这些纹理,以生成可以将其组合到颜色缓冲区的