环境光遮蔽

环境光遮蔽(英语:ambient occlusion)是计算机图形学中的一种着色和渲染技术,用来计算场景中每一点是如何接受环境光的。例如,一个管道的内部显然比外表面更隐蔽(因此也更暗),越深入管道光线就越暗。环境光遮蔽可以被看作是光线能到达表面上每一点的能力的数值。[1]在拥有开放天空的场景中,这是通过估算每个点的可看见天空的大小来完成的;而在室内环境中,只考虑一定范围内的物体,并假设墙壁是环境光源。处理结果是一个漫反射、非定向的着色效果,并不会形成明确的阴影,只是能让靠近物体及被遮蔽的区域更暗,并影响渲染图像的整体色调。环境光遮蔽常被用作后期处理。

用了环境光遮蔽的地图(中),只有在拐角的最内侧才会变暗

与局部方法如Phong着色法不同,环境光遮蔽是一种全局方法,意味着每个点的照明是场景中其他几何体的共同作用。然而,这只是一个非常粗略的近似全局光照。仅通过环境光遮蔽得到的物体外观与阴天下的物体相似。

第一个可以实时模拟环境光遮蔽的算法是由CrytekCryEngine 2)的研发部门开发的。[2] 随着英伟达2018年发布的实时光线追踪硬件,光线追踪环境光遮蔽(英语:ray traced ambient occlusion, RTAO)在游戏和其他实时应用中成为可能。[3]虚幻引擎在4.22版本中加入了这个特性。[4]

实现

右侧的3D动画上启用了环境光遮蔽

在没有硬件辅助的光线追踪环境光遮蔽时,实时应用程序,如电脑游戏,可以使用屏幕空间环境光遮蔽(英语:Screen space ambient occlusion)或水平基准环境光遮蔽(英语:Horizon Based Ambient Occlusion+)作为真实感环境光遮蔽的一个更快速的近似处理,使用像素深度而不是场景几何形成一个环境光遮蔽地图。

环境光遮蔽与可访问着色法相关,它根据表面被各种元素(如污垢、光线等)接触的容易程度来决定外观,以其相较之下的简单性和高效性在动画制作中得到了广泛的应用。

环境光遮蔽着色器能让人更好地感知三维的显示对象。一篇论文中的感知实验的结果表明,漫反射均匀天空照明下的深度提示优于直接照明模型。[5]

分类

  • SSAO
萤幕空间环境光遮蔽(英语:Screen space ambient occlusion
  • SSDO
萤幕空间定向定向遮蔽(英语:Screen space directional occlusion
  • RTAO
光线追踪环境光遮蔽(英语:Ray Traced Ambient Occlusion
  • HDAO
高分辨率环境光遮蔽(英语:High Definition Ambient Occlusion
  • HBAO+
水平基准环境光遮蔽(英语:Horizon Based Ambient Occlusion+
  • AAO
Alchemy Ambient Occlusion
  • ABAO
角度基准环境光遮蔽(英语:Angle Based Ambient Occlusion
  • PBAO
预烘焙环境光遮蔽(英语:Pre Baked Ambient Occlusion
  • VXAO
体素基准环境光遮蔽(英语:Voxel Accelerated Ambient Occlusion
  • GTAO
Ground Truth based Ambient Occlusion[6]

认可

2010年,海登·兰迪斯、肯·麦高和希尔玛·科赫因为他们在环境光遮蔽渲染方面的工作获得了学院科学技术奖英语Scientific and Technical Academy Award[7]

参考资料

  1. ^ (英文)Miller, Gavin. Efficient algorithms for local and global accessibility shading. Proceedings of the 21st annual conference on Computer graphics and interactive techniques. 1994: 319–326. 
  2. ^ (英文)AMBIENT OCCLUSION: AN EXTENSIVE GUIDE ON ITS ALGORITHMS AND USE IN VR. ARVIlab. [2018-11-26]. (原始内容存档于2018-11-26). 
  3. ^ (英文)Ray Traced Ambient Occlusion. Nvidia. [2019-12-21]. (原始内容存档于2019-06-18). 
  4. ^ (英文)Unreal Engine Adds Support for DX12 Raytracing. ExtremeTech. [2019-12-21]. (原始内容存档于2019-04-16). 
  5. ^ (英文)Langer, M.S.; H. H. Buelthoff. Depth discrimination from shading under diffuse lighting. Perception. 2000, 29 (6): 649–660. CiteSeerX 10.1.1.69.6103 . PMID 11040949. doi:10.1068/p3060. 
  6. ^ (英文)Practical Realtime Strategies for Accurate Indirect Occlusion (PDF). [2019-12-21]. (原始内容存档 (PDF)于2020-02-24). 
  7. ^ (英文)Oscar 2010: Scientific and Technical Awards页面存档备份,存于互联网档案馆), Alt Film Guide, Jan 7, 2010