Demo:http://www.artvily.com/renderCase?sample=ssao5

如果一段时间加载不到资源,请刷新页面再试

SSAO是实时渲染中常用的一种屏幕空间环境遮蔽效果,它能很好的更好的表现光照明暗的层次感和立体感,使用SSAO的画面感觉更真实细节也更丰富。上面所给的Demo为了清晰展示SSAO效果,所以场景中的显示对象都是纯色的。

请见下面的两个效果图比较.

没有使用SSAO,画面明暗层次很单调:

16样本值采样核心 SSAO (屏幕空间环境遮蔽)(WebGL实现)

使用SSAO, 画面明暗层次细节更丰富立体感更强:

16样本值采样核心 SSAO (屏幕空间环境遮蔽)(WebGL实现)

SSAO的相关技术实现(基于OpenGL GLSL): https://learnopengl-cn.readthedocs.io/zh/latest/05%20Advanced%20Lighting/09%20SSAO/

基本技术实现这里就不啰嗦了,但是半球空间采样的样本数量越大,实时渲染运行时性能越低。

这里降低了采样次数,尽量还能保持视觉效果的质量。主要使用了以下三个步骤来优化:

1.采样核心的随机转动,使用了更丰富的随机值,这里用了一张细节更多尺寸更大的noise纹理作为这个随机值

2.在for循环中对样本每一次计算时,再次使用随机值对半球半径做抖动

3.使用合适的模糊机制来平滑低采样带来的噪点

更好效果请见: https://blog.csdn.net/vily_lei/article/details/87821878

相关文章:

  • 2021-10-07
  • 2021-07-07
  • 2021-10-25
  • 2022-12-23
  • 2021-07-05
  • 2021-11-22
猜你喜欢
  • 2022-01-02
  • 2022-01-26
  • 2021-12-05
  • 2022-12-23
  • 2021-06-11
  • 2021-12-29
  • 2021-07-18
相关资源
相似解决方案