顶级质量的SSAO

踩了前前后后无数坑,实现方式都试过了10几种,终于得到这个方案。虽说比不上2015最新的far-field AO,但至少在near/middle-field上,算是state of arts的实现了。不多说,直接挑战N社的HBAO+!

时间: 2024-08-05 08:06:27

顶级质量的SSAO的相关文章

ssao

ssao, 基本思路是先得到深度纹理,以及法线纹理. 然后画一个覆盖全屏的四边形 不一定真画,只要保证四边形的四个点映射到屏幕的四个角即可, 所以甚至可以不必传入顶点的坐标数据,根据顶点索引值(dx可以得到,opengl考虑顶点属性) 映射到屏幕的四个角 在四边形片元(dx对应叫像素)着色器中,查对应的深度纹理,以及法线纹理normal. 可以根据深度值还原出顶点在视空间中的位置pos(透视投影的逆运算即可) 然后从该点周围取几个点(参数控制,有ray方式或者水平切片式), 比较周围的这些点p,

Bilateral Filtering(双边滤波) for SSAO

原网址:http://blog.csdn.net/bugrunner/article/details/7170471 1. 简介 图像平滑是一个重要的操作,而且有多种成熟的算法.这里主要简单介绍一下Bilateral方法(双边滤波),这主要是由于前段时间做了SSAO,需要用bilateral blur 算法进行降噪.Bilateral blur相对于传统的高斯blur来说很重要的一个特性即可可以保持边缘(Edge Perseving),这个特点对于一些图像模糊来说很有用.一般的高斯模糊在进行采样

OpenGL核心之SSAO技术讲解(一)

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN视频网址:http://edu.csdn.net/lecturer/144 在使用引擎开发产品时,我们经常会使用环境光作为游戏场景的太阳光使用,环境光照是我们加入场景总体光照中的一个固定光照常量,它被用来模拟光的散射(Scattering).在现实中,光线会

OpenGL核心技术之SSAO技术讲解(二)

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN视频网址:http://edu.csdn.net/lecturer/144 接着OpenGL核心技术之SSAO技术讲解(一)继续给读者分析SSAO技术,我们需要沿着表面法线方向生成大量的样本.就像我们在这个教程的开始介绍的那样,我们想要生成形成半球形的样本.

Bilateral Filtering(双边滤波) for SSAO(转)

原文链接:http://blog.csdn.net/bugrunner/article/details/7170471 另外一篇相似的英文资料:http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html#Index   1. 简介 图像平滑是一个重要的操作,而且有多种成熟的算法.这里主要简单介绍一下Bilateral方法(双边滤波),这主要是由于前段时间做了SSAO,需要用b

SSAO + FXAA

如今已经完毕了渲染器的屏幕空间环境光遮挡(SSAO)算法和FXAA高速反走样算法,等有时间就把当中的相关原理和当中遇到的问题进行总结发表.

shadow mapping实现动态shadow实现记录

前段时间一直在弄一个室内场景,首先完成了render,效果还可以.然后给其加上shadow,使其更逼真.这里主要记录下在做的过程中遇到的问题. 1.是在导入场景的时候,由于场景比较大(200M)左右,所以在ios上加载这么大的场景会频繁的memorywarning,然后就会被系统kill掉.这个问题的解决方法是通过改变数据类型来达到压缩的目的.顶点的坐标double是没法改变的,如果改变会严重影响场景的准确度.这里主要是改变normal和 uv的类型,其实在正常的精度范围内,normal和 uv

Morphological Antialiasing

mlaa有着和ssao很像的特点,比较简单的技术,很棒的效果. 而且mlaa显然要比ssao有冲击力的多,个人觉得要把msaa干翻了. 先看对比图: mlaa的产生发展也很有意思,本来是intel的人发明的,估计是要配合larabee的,是一种适合在cpu上做的aa技术. 但是马上被cpu端计算能力过剩的ps3看上了,被实现出来,在战神等游戏里大展宏图. 在后面gpu上也开始改进,sig10上有个文章讲gpu mlaa,但是效率很一般,720p的在gtx295上依旧要3.4ms. http://

Unity3D使用小技巧

原地址:http://unity3d.9tech.cn/news/2014/0411/40178.html 1.Crtl+f摄像机自动适配场景. 2.可以用一个立方体作为底盘. 3.人物角色可以直接引入包,有第一人称和第三人称,已经封装好. 4.光源可以设置投影. 5.3DMax是Z轴向上,而一般游戏引擎是Y轴向上,所以导出的时候一定要注意选择YZ转化的格式(YZ转化选项一定要勾选). 另外,obj格式不支持动画,其实游戏中最常用的格式是"FBX"和"DAE"格式,