CN102592305A - 自适应的屏幕空间环境光遮蔽方法 - Google Patents

自适应的屏幕空间环境光遮蔽方法 Download PDF

Info

Publication number
CN102592305A
CN102592305A CN2011102613745A CN201110261374A CN102592305A CN 102592305 A CN102592305 A CN 102592305A CN 2011102613745 A CN2011102613745 A CN 2011102613745A CN 201110261374 A CN201110261374 A CN 201110261374A CN 102592305 A CN102592305 A CN 102592305A
Authority
CN
China
Prior art keywords
sampling
depth
screen space
surround lighting
sampled point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011102613745A
Other languages
English (en)
Inventor
任重
周昆
李文耀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN2011102613745A priority Critical patent/CN102592305A/zh
Publication of CN102592305A publication Critical patent/CN102592305A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

本发明公开了一种自适应的屏幕空间环境光遮蔽方法,该方法通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息;通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样;本发明通过自适应计算所需采样层数,以接近单层方法的绘制效率获得了和多层方法几乎完全相同的绘制效果,可以直接集成到现有的实时渲染工具中。

Description

自适应的屏幕空间环境光遮蔽方法
技术领域
本发明涉及图形绘制技术领域,尤其涉及一种自适应的屏幕空间环境光遮蔽方法。 
背景技术
环境光遮蔽(Ambient Occlusion,AO)是虚拟场景绘制中一种十分重要的视觉效果。通过表现从周围环境漫反射过来的光线能够达到当前点的比例,环境光遮蔽能够有效提供关于场景中物体之间的位置关系和物体表面的起伏情况的重要视觉信息,例如在柱子和地面的接触处的明显阴暗区域,以及衣服表面的复杂褶皱细节产生的明暗变化等。环境光遮蔽被广泛的应用到电影和游戏等工业中,几乎出现在所有的最新CG电影和互动游戏中,如《阿凡达》、《飞屋环游记》、《星际争霸II》等。 
环境光遮蔽通过在场景中的点上产生一个标量值来描述由这点向各个方向出射的光线被遮挡的概率,这一标量值可以用来产生全局的遮挡效果,并为用户提供关于场景中物体之间的位置关系和物体表面的起伏情况的重要视觉信息。计算环境光遮挡的可通过在半球面上对可见性函数的积分来得到,定义如下: 
Figure 52281DEST_PATH_IMAGE002
                   (1)
公式(1)是一个方向积分,
Figure 530667DEST_PATH_IMAGE003
Figure 174138DEST_PATH_IMAGE004
点朝向法线方向的半球面上的方向集合,
Figure 197720DEST_PATH_IMAGE005
Figure 926642DEST_PATH_IMAGE004
点到其沿
Figure 130090DEST_PATH_IMAGE006
方向与场景的第一个交点的距离,
Figure 628067DEST_PATH_IMAGE007
是距离衰减函数,
Figure 757304DEST_PATH_IMAGE008
Figure 973522DEST_PATH_IMAGE006
方向跟
Figure 856027DEST_PATH_IMAGE004
点法向的夹角,
Figure 146194DEST_PATH_IMAGE009
。衰减函数
Figure 275693DEST_PATH_IMAGE007
从1开始衰减并在某个固定距离下衰减到0,我们把这个用户指定的固定距离记作采样半径R。
在电影工业等离线渲染器中,现有技术使用光线跟踪方法计算可见性函数,并用蒙特卡罗(Monte Carlo)积分计算公式(1)。该方法能够精确的绘制环境光遮蔽,但光线与场景的求交运算非常耗时。为了加快光线跟踪计算速度,现有技术采用了静态场景预计算或者简化场景表达等手段,此类方法可参考Sloan P, Kautz J, Snyder J. Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments. ACM Transactions on Graphics, 2002, 21(3): 527 - 536; Kontkanen J, Aila T. Ambient Occlusion for Animated Characters[C]//Proceedings of the Eurographics Symposium on Rendering. Nicosia, 2006: 343-348; Bunnell M. GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation[M]. California: Addison-Wesley, 2005: 223-233。这些方法的主要问题在于,其计算复杂度和场景本身的复杂度相关,因此很难在像游戏这样的实时复杂三维系统中得到广泛应用。 
在游戏工业等实时渲染器重,最常用的一类技术是屏幕空间环境光遮蔽(Screen Space Ambient Occlusion, SSAO)方法。这类方法的基本思路是将当前视点下的深度缓存当成场景的一个粗略的近似来计算AO。SSAO方法往往都具有很高的绘制效率,主要原因在于它通过引入场景的屏幕空间近似实现了环境光遮蔽计算和场景本身的复杂性的剥离,这一特性使得这类方法在交互式三维游戏(如《Crysis》、《StarCraft II》、《Halo:Reach》、《Final Fantasy XIV online》等)中得到了大量的应用。此类方法可参考Bavoil L, Sainz M. Image-space Horizon-based Ambient Occlusion[R]. California: NVIDIA Corporation, 2008; Filion D, Mcnaughton R. Effects & techniques[C]//Proceeding of the International Conference on Computer Graphics and Interactive Techniques. New York, 2008: 133-164; Loos B, Sloan P. Volumetric Obscurance[C]//Proceedings of the Symposium on Interactive 3D Graphics and Games. New York, 2010: 151-156; Mittring M. Finding next gen: Cryengine 2[C] //Proceeding of the International Conference on Computer Graphics and Interactive Techniques. New York, 2007: 97–121; Shanmugam P, Arikan O. Hardware accelerated ambient occlusion techniques on GPUs[C]//Proceedings of the symposium on Interactive 3D Graphics and Games. New York, 2007:73-80。 
SSAO方法计算环境光遮蔽的步骤如下: 
步骤一、在当前摄像机处对场景进行光栅化渲染,得到当前视角的深度缓存和法向缓存(可选),作为下一步骤的输入。
步骤二、全屏幕后处理,对屏幕空间内每一个像素,计算其在三维空间里的位置,执行: 
1.1 在以点为中心,R为半径的球体空间内(若有法向缓存则为半球体空间内)随机的产生若干三维采样点;
1.2 接着估算每个采样点产生的遮蔽大小,计算每个采样点在深度缓存上的投影点,用投影点产生的遮蔽近似代替采样点的遮蔽。对于投影点的遮蔽,不同的屏幕空间环境光遮蔽方法使用了不同的计算方法。最简单的方法是直接利用投影点跟
Figure 544497DEST_PATH_IMAGE004
点深度值差异计算遮蔽大小,这会带来自身遮蔽等走样问题。Filion方法通过引入法向缓存,使得所有采样点都在
Figure 392368DEST_PATH_IMAGE004
点上方,并利用采样点跟投影点的深度差异计算遮蔽大小,不会带来自身遮蔽。
1.3 最后计算所有采样点的平均遮蔽。 
步骤三、对步骤二的结果进行智能高斯模糊以消除噪音,通过法向信息和深度信息判断物体的边界,并只在物体内部执行高斯模糊,这样可以保存原有的边界信息。 
SSAO方法的主要问题是对场景的粗略近似带来了不可忽略的走样问题,如由于屏幕空间的深度缓存将所有当前视锥外的物体都排除在了环境光遮蔽计算之外,这通常会导致在屏幕边界处错误地对环境光遮蔽的低估。另外,由于深度缓存无法记录被深度剔除(Visibility Culling)的部分场景,这也会直接造成对环境光遮蔽的错误计算。对于前者,可以通过略微扩大深度纹理的大小以及相应的增大视野(FOV)来大大缓解;对于后者,人们提出了多层深度缓存下的环境光遮蔽方法。首先,用深度剥离技术获得当前场景的多层深度信息;接着在多层深度信息上采样以获得更为精确地环境光遮蔽估计。通过引入多层的深度缓存,我们可以得到更为精确的环境光遮蔽估计,然而,AO计算需要在多层深度缓存中进行采样。由于计算量随深度层数近似线性的增长,而复杂场景会需要更多的深度缓存来描述,这就失去了屏幕空间环境光遮蔽方法与场景复杂度无关的优势。 
发明内容
本发明针对在游戏工业渲染器中广泛使用的屏幕空间环境光遮蔽方法在多层深度缓存下计算量随层数线性增长的问题,提出了一种自适应的屏幕空间环境光遮蔽方法。 
本发明的目的是通过以下技术方案来实现的:一种基于现有的屏幕空间环境光遮蔽方法,该方法通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息;通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样。 
进一步地,所述通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息包括以下子步骤: 
(1)获取采样点s对应的深度缓存中的采样点;
(2)计算步骤(1)获取的深度缓存中的采样点和着色计算点p之间的距离d,并通过距离衰减函数
Figure 6014DEST_PATH_IMAGE010
计算着色计算点p采样方向
Figure 230322DEST_PATH_IMAGE011
上的遮蔽,再和
Figure 495081DEST_PATH_IMAGE011
与法向之间的夹角余弦相乘得到遮蔽信息的估算。
进一步地,所述通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样包括以下子步骤: 
(1)利用深度剥离技术渲染
Figure 779432DEST_PATH_IMAGE012
层深度纹理
Figure 378909DEST_PATH_IMAGE013
Figure 141329DEST_PATH_IMAGE014
,…,
Figure 260595DEST_PATH_IMAGE015
,以及一层法向纹理
Figure 715847DEST_PATH_IMAGE016
(2)通过自适应多层SSAO算法来自适应地采样环境光遮蔽;具体如下:通过在CPU上生成的
Figure 301156DEST_PATH_IMAGE017
个三维采样点计算屏幕空间内每个像素的环境光遮蔽,
Figure 867266DEST_PATH_IMAGE017
为自然数,这些三维采样点被分为两个部分,第一部分为预测采样点,第二部分为计算采样点;在所有预测采样点上计算最佳环境光遮蔽采样所在的层数,并求得其最大值D max,而在计算采样点上采样环境光遮蔽在D max层上停止;
(3)降低噪音,步骤二中得到的结果往往带有条状噪音,我们使用箱式低通滤波器(box filter)或上采样方法来消除噪音。
    本发明的有益效果是,由于场景中大部分区域的环境光遮蔽仅由第一层深度缓存决定,通过自适应估算,仅在深度跳变区域进行多层采样,可以极大地提高多层方法的计算效率。本发明解决了多层SSAO计算开销随深度缓存的层数线性增长的问题。本发明可以很容易和游戏工业中的其他渲染技术相结合,实时绘制出高质量的环境光遮蔽效果。 
附图说明
图1是本发明提出的采样点遮蔽信息估算方法示意图; 
图2是本发明的自适应多层屏幕空间环境光遮蔽方法方法与简单多层屏幕空间环境光遮蔽方法方法的对比图,图中,(a) 38 FPS,单层SSAO,(b) 11 FPS,简单多层SSAO,(c)31 FPS,自适应多层SSAO,(d)光线跟踪5分38秒
图3是本发明的自适应多层屏幕空间环境光遮蔽方法与简单多层屏幕空间环境光遮蔽方法方法在不同场景中的性能对比折线图;
图4是本发明与各种现有环境光遮蔽技术在效果与性能上的对比图。
具体实施方式
多层屏幕空间环境光遮蔽方法需要解决的基本问题有两个,一是如何在采样点上根据深度缓存中的数据估计遮蔽信息,二是如何选取采样点。本发明的具体内容是:本发明基于现有的屏幕空间环境光遮蔽方法,通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息;通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样。具体阐述如下: 
一、通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息
本发明提出了一种与现有SSAO方法不同的采样点遮蔽信息的估算方法。如图1所示,Filion方法在着色计算点p采样方向
Figure 841038DEST_PATH_IMAGE011
方向上的采样点(图中用星号标识)s上通过以下原则估算该方向上的遮蔽信息:
1、若s对应的深度缓存中的深度大于s点本身的深度,则认为
Figure 467192DEST_PATH_IMAGE011
上遮蔽为0;
2、若s对应的深度缓存中的深度小于s点本身的深度,则计算这两个深度的差异d,并通过距离衰减函数
Figure 41261DEST_PATH_IMAGE010
计算
Figure 145484DEST_PATH_IMAGE011
上的遮蔽。
最后将所有采样方向上的遮蔽求平均,就得到着色计算点p的环境光遮蔽。 
该估算方法存在如下问题,如果s刚好位于两个物体之间的自由区域(如图1中的s1),或s没有被深度缓存中的采样所覆盖,但在上在ps之间有物体恰巧挡住了这条光线(如图1中的s2),Filion方法都会得到错误的遮蔽信息。另外,Filion方法计算的遮蔽信息是根据s点和其对应的深度缓存中采样的深度差来计算的,这和环境光遮蔽的正确计算公式(1)有较大的差别。 
针对这些问题,本发明提出了下述改进的遮蔽信息估算方法: 
1、获取采样点s对应的深度缓存中的采样点(如图1中的p1,p2);
2、计算深度缓存中的采样点和着色计算点p之间的距离d,并通过距离衰减函数
Figure 36396DEST_PATH_IMAGE010
计算着色计算点p采样方向
Figure 333648DEST_PATH_IMAGE011
上的遮蔽,再与与法向之间的夹角余弦相乘得到遮蔽信息的估算;其中,距离衰减函数
Figure 455505DEST_PATH_IMAGE007
从1开始衰减到0,通常可以取距离d的一次或二次衰减函数。
当然,这两种估算方法本质上都只是实际遮蔽信息的一种近似,必然在某些特定情形下导致对遮蔽信息的错误估计。但我们通过实验发现,在实际场景中我们的计算方法通常能得到更好的结果,在图1的右边给出了一个简单的分析。其中s1采样点所在方向与场景无交,所以真实遮蔽为0,由于投影点p1在采样半径R之外,本文方法对s1采样点的遮蔽估计也为0,而Filion方法认为p1深度小于s1因此产生了遮蔽
Figure 423461DEST_PATH_IMAGE018
s2采样点所在方向与场景交点为q,所以真实遮蔽为
Figure 706543DEST_PATH_IMAGE019
,在本文方法中估算结果为,略小于真实遮蔽,但在Filion方法中由于投影点p2深度值大于采样点s2,估算遮蔽结果为0。 
由上述分析可知,我们提出的屏蔽信息的估算方法比现有方法能更好地近似实际遮蔽信息,从而获得更高质量的环境光遮蔽效果 
二、通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样。
为了消除单层SSAO方法因为丢失深度信息带来的走样问题,人们提出了多层深度采样。渲染场景的多层深度缓存,在多层信息中对采样点的遮蔽进行更准确的估算。由于我们计算遮蔽信息的基本思路是在深度缓存中寻找一个投影点来“代替”当前的采样点并计算遮蔽信息,因此我们只需计算采样点在每一层深度缓存上的投影点的遮蔽大小,把产生遮蔽最大的有效投影点作为最佳环境光遮蔽采样计算环境光遮蔽。这种简单的多层策略可以有效的改进屏幕空间环境光遮蔽的质量,但是计算开销也和深度缓存的数量呈线性增长。 
将单层和多层的屏幕空间环境光遮蔽绘制结果进行了比较,我们发现,差别较大的部分往往是深度发生跳变的区域。直观上这很容易理解——深度发生跳变的区域附近,通常场景会具有比较高的深度复杂性,而以单层深度缓存作为场景的近似描述,在这些区域准确度是最低的。反过来看这一现象,就意味着单层的深度缓存在深度变化平缓的区域已经可以提供足够的近似精度,真正需要多层深度采样的区域往往只占所有像素中很小的一部分。 
我们在一些例子场景中对最佳环境光遮蔽采样所在的层数进行了分析。我们把深度缓存编号为1-4,并把每个像素上各采样方向的最佳环境光遮蔽采样所在层号的平均值可视化出来。我们发现,大部分最佳采样落在第一层深度缓存上,所有像素的平均最佳采样层数只有1.03。因此,如果能在深度变化平缓的区域减少真正参与计算的采样层数,我们就能大大提高多层方法的计算效率。 
一个直接的解决方法是在屏幕空间每个像素点周围生成若干采样点并计算这些采样点投影到该像素法线方向的高度,这些高度的方差就反映了该像素领域内的深度变化情况,可以用来确定获取深度缓存的层数。但这一方法需要引入一个额外的绘制环节和一个额外的存储方差或层数的缓存,这就抵消掉了其减少深度缓存采样层数带来的好处。 
本发明提出了一种新的直接嵌入到屏蔽信息采样过程中的自适应采样方法,可以避免上述为评估像素点周围深度变化情况带来的额外开销。本发明提出的自适应多层屏幕空间环境光遮蔽方法实施流程共分三个步骤: 
步骤一、利用深度剥离技术渲染
Figure 221018DEST_PATH_IMAGE012
层深度纹理
Figure 628789DEST_PATH_IMAGE014
,…,
Figure 878505DEST_PATH_IMAGE015
,以及一层法向纹理
Figure 801462DEST_PATH_IMAGE016
步骤二、通过自适应多层SSAO算法来自适应地采样环境光遮蔽。具体如下:通过在CPU上生成的个三维采样点计算屏幕空间内每个像素的环境光遮蔽,
Figure 368895DEST_PATH_IMAGE017
为自然数,这些三维采样点被分为两个部分,第一部分为预测采样点,第二部分为计算采样点。在所有预测采样点上计算最佳环境光遮蔽采样所在的层数,并求得其最大值D max,而在计算采样点上采样环境光遮蔽在D max层上停止。 
像素着色器伪代码如算法1所示,其中
Figure 422302DEST_PATH_IMAGE021
是归一化屏幕坐标(左上角为
Figure 199765DEST_PATH_IMAGE022
,右下角为
Figure 680425DEST_PATH_IMAGE023
);为使用的深度缓存层数,是在CPU上生成的
Figure 150349DEST_PATH_IMAGE017
个三维采样点。前 N个采样点为预测采样点,我们计算了所有预测采样点上的最佳环境光遮蔽采样所在的层数,并求得其最大值D max(18-19行)。对于N个采样点中的其他(1-)N个采样,在遍历多层深度采样时我们在D max层上停止(9-10行)。 
Figure 429386DEST_PATH_IMAGE027
步骤三、 降低噪音,步骤二中得到的结果往往带有条状噪音,我们使用箱式低通滤波器(box filter)或上采样方法来消除噪音。 
这样,本发明在不引入新的绘制环节和缓存的情况下,利用屏幕空间环境光遮蔽计算的一部分采样点对当前像素点邻域内所需的深度缓存层数进行估计,并减少了整个计算所需的层数。在一个典型的测试场景中,我们只需平均检测1.14层的深度缓存,这大大降低了多层屏幕空间环境光遮蔽的计算开销。 
下面根据附图和实施例详细描述本发明,本发明的目的和效果将变得更加明显。 
发明人在一台配备2.3GHz双核CPU,2GB内存,和NVIDIA的Geforce GTX 285图形处理单元的机器上实现了本发明的若干实施实例。 
实施例一、发明人对比了在单层SSAO方法与多层SSAO方法的效果,以及多层SSAO方法在开启自适应预测与否下的性能对比。如图2所示,所有图片的分辨率都为800x600,(a) 单层SSAO,38 FPS,每个像素使用256个采样点。 (b) 简单多层SSAO,11 FPS,在4层深度缓存中计算AO,每个像素使用4x256个采样点。 (c)自适应多层SSAO,31 FPS,每个像素自适应的在若干层深度缓存中计算AO(最多4层),每个像素平均使用1.2x256个采样点。 (d) 光线跟踪AO,5分38秒每帧,使用Mental Ray渲染,每个像素使用1024根光线。自适应多层SSAO的结果几乎跟计算所有层的简单多层SSAO一模一样,但渲染速度却是简单多层SSAO的2.8倍。 
实施例二、发明人比较了现有AO技术和本发明方法,包括Volumetric Obscurance(VO),Volumetric Ambient Occlusion(VAO),单层SSAO,简单四层SSAO,本发明的4层自适应SSAO,以及作为参考结果的光线跟踪。其中VO和VAO都是用遮挡体积测定来求解AO的方法,这类方法把深度缓存理解为高度图,并把半球体空间内处于高度图之下的体积比例作为AO大小。这类方法速度很快,并且在深度变换平缓的区域可以获得很好的效果,如一大片地面,墙壁等。VO方法使用线采样和区域采样代替点采样,从而进一步提高了采样效率。但是用遮挡体积测定来近似求解AO存在如下问题: 
1.     由于假设了深度缓存之下全部为实体,在深度跳变区域计算得到的遮挡体积往往大于真实的遮挡体积。
2.     由于遮挡体积比例是一种近似求解公式(1)的方法,所以整体画面与光线跟踪方法有较大差异。 
    本发明的方法严格按照公式(1)定义求解,在画面整体效果上更接近于光线跟踪结果。在同样采样点个数下,单层SSAO计算速度接近于VAO。VO,VAO和单层SSAO都只在一层深度缓存下计算AO,一层深度缓存丢失了被深度剔除的场景信息,这会带来走样问题。在VO和VAO中表现为过遮蔽,因为它们假设第一层深度缓存之后都是实体,在深度跳变区域计算得到的遮挡体积往往会比真实的遮挡体积大。在单层SSAO中表现为遮蔽不足,这是因为在深度跳变的区域离采样点更近的投影点可能出现在后续深度缓存上,该走样问题在静帧图片中不易察觉,但在视点移动时AO画面会有明显的不连续。自适应4层SSAO不仅解决了单层深度缓存下的走样问题,使得AO结果在深度跳变区域更连续,而且计算时间仅比单层SSAO多62%,而简单多层计算时间为单层的3.3倍。 
实施例三、发明人给出了单层SSAO,简单多层SSAO和本发明的自适应多层SSAO在不同几何复杂度场景下AO计算时间的折线图(如图3所示,所有方法每个像素都使用256个采样点,图片分辨率为 800x600)。我们发现,除了Trees场景外,其他场景在每种AO方法中计算时间基本相同,这进一步证明了屏幕空间环境光遮蔽算法实现了AO计算和场景本身复杂性的剥离。Trees场景由于有部分像素点落在了天空上无需计算AO(见图4),所以AO计算时间小于其他场景。图3中多层算法AO计算时间都在4层深度缓存下测得,简单多层SSAO由于在每个采样点上都要进行4层AO计算,其计算时间基本在单层SSAO的3-4倍左右;而自适应多层SSAO通过若干预测采样点估算所需的采样层数,避免在深度变化平缓的区域进行不必要的多层采样,从而把多层SSAO的计算时间下降到单层SSAO的1.2-1.5倍,极大的提高了多层深度缓存下SSAO的绘制效率。 

Claims (3)

1.一种基于现有的屏幕空间环境光遮蔽方法,其特征在于,该方法通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息;通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样。
2.根据权利要求1所述基于现有的屏幕空间环境光遮蔽方法,其特征在于,所述通过改进的采样点遮蔽信息估算方法来近似采样点上的遮蔽信息包括以下子步骤:
(1)获取采样点s对应的深度缓存中的采样点;
(2)计算步骤(1)获取的深度缓存中的采样点和着色计算点p之间的距离d,并通过距离衰减函数                                                
Figure 2011102613745100001DEST_PATH_IMAGE001
计算着色计算点p采样方向
Figure 180705DEST_PATH_IMAGE002
上的遮蔽,再和
Figure 439648DEST_PATH_IMAGE002
与法向之间的夹角余弦相乘得到遮蔽信息的估算。
3.根据权利要求1所述基于现有的屏幕空间环境光遮蔽方法,其特征在于,所述通过自适应的估算屏幕空间中每个像素点所需的采样层数,只在深度跳变区域进行多层采样包括以下子步骤:
(1)利用深度剥离技术渲染
Figure 2011102613745100001DEST_PATH_IMAGE003
层深度纹理
Figure 131660DEST_PATH_IMAGE004
Figure 2011102613745100001DEST_PATH_IMAGE005
,…,,以及一层法向纹理
Figure 2011102613745100001DEST_PATH_IMAGE007
(2)通过自适应多层SSAO算法来自适应地采样环境光遮蔽;具体如下:通过在CPU上生成的
Figure 516691DEST_PATH_IMAGE008
个三维采样点计算屏幕空间内每个像素的环境光遮蔽,
Figure 634951DEST_PATH_IMAGE008
为自然数,这些三维采样点被分为两个部分,第一部分为预测采样点,第二部分为计算采样点;在所有预测采样点上计算最佳环境光遮蔽采样所在的层数,并求得其最大值D max,而在计算采样点上采样环境光遮蔽在D max层上停止;
(3)降低噪音,步骤二中得到的结果往往带有条状噪音,我们使用箱式低通滤波器(box filter)或上采样方法来消除噪音。
CN2011102613745A 2011-09-06 2011-09-06 自适应的屏幕空间环境光遮蔽方法 Pending CN102592305A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011102613745A CN102592305A (zh) 2011-09-06 2011-09-06 自适应的屏幕空间环境光遮蔽方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102613745A CN102592305A (zh) 2011-09-06 2011-09-06 自适应的屏幕空间环境光遮蔽方法

Publications (1)

Publication Number Publication Date
CN102592305A true CN102592305A (zh) 2012-07-18

Family

ID=46480891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102613745A Pending CN102592305A (zh) 2011-09-06 2011-09-06 自适应的屏幕空间环境光遮蔽方法

Country Status (1)

Country Link
CN (1) CN102592305A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104517313A (zh) * 2014-10-10 2015-04-15 无锡梵天信息技术股份有限公司 基于屏幕空间的环境光遮蔽的方法
CN106384379A (zh) * 2016-08-31 2017-02-08 上海交通大学 一种轴对齐交互式采样软影生成方法
CN107730578A (zh) * 2017-10-18 2018-02-23 广州爱九游信息技术有限公司 光环境遮蔽图的渲染方法、生成效果图的方法和设备
CN110852188A (zh) * 2019-10-22 2020-02-28 浙江大学 一种提取ct数字图像中整个土壤团聚体孔隙结构的方法
CN111429513A (zh) * 2020-04-26 2020-07-17 广西师范大学 一种可优化视觉遮挡场景的光场绘制的方法
CN112419459A (zh) * 2020-10-20 2021-02-26 上海哔哩哔哩科技有限公司 烘焙模型ao贴图的方法、装置、计算机设备和存储介质
CN112734896A (zh) * 2021-01-08 2021-04-30 网易(杭州)网络有限公司 环境遮蔽渲染方法、装置、存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615300A (zh) * 2009-07-02 2009-12-30 北京航空航天大学 一种屏幕空间微结构表面对象环境光遮挡方法
US20100141652A1 (en) * 2008-12-05 2010-06-10 International Business Machines System and Method for Photorealistic Imaging Using Ambient Occlusion
CN101882323A (zh) * 2010-05-19 2010-11-10 北京航空航天大学 基于高度图的微结构表面全局光照实时绘制方法
CN102024269A (zh) * 2009-09-21 2011-04-20 西门子公司 在体绘制中有效确定灯光效果

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100141652A1 (en) * 2008-12-05 2010-06-10 International Business Machines System and Method for Photorealistic Imaging Using Ambient Occlusion
CN101615300A (zh) * 2009-07-02 2009-12-30 北京航空航天大学 一种屏幕空间微结构表面对象环境光遮挡方法
CN102024269A (zh) * 2009-09-21 2011-04-20 西门子公司 在体绘制中有效确定灯光效果
CN101882323A (zh) * 2010-05-19 2010-11-10 北京航空航天大学 基于高度图的微结构表面全局光照实时绘制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李文耀,任重: "自适应的多层屏幕空间环境光遮蔽", 《计算机辅助设计与图形学学报》, vol. 23, no. 8, 15 August 2011 (2011-08-15) *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104517313B (zh) * 2014-10-10 2017-12-05 无锡梵天信息技术股份有限公司 基于屏幕空间的环境光遮蔽的方法
CN104517313A (zh) * 2014-10-10 2015-04-15 无锡梵天信息技术股份有限公司 基于屏幕空间的环境光遮蔽的方法
CN106384379B (zh) * 2016-08-31 2019-05-07 上海交通大学 一种轴对齐交互式采样软影生成方法
CN106384379A (zh) * 2016-08-31 2017-02-08 上海交通大学 一种轴对齐交互式采样软影生成方法
CN107730578B (zh) * 2017-10-18 2021-07-23 阿里巴巴(中国)有限公司 光环境遮蔽图的渲染方法、生成效果图的方法和设备
CN107730578A (zh) * 2017-10-18 2018-02-23 广州爱九游信息技术有限公司 光环境遮蔽图的渲染方法、生成效果图的方法和设备
CN110852188A (zh) * 2019-10-22 2020-02-28 浙江大学 一种提取ct数字图像中整个土壤团聚体孔隙结构的方法
CN110852188B (zh) * 2019-10-22 2022-04-29 浙江大学 一种提取ct数字图像中整个土壤团聚体孔隙结构的方法
CN111429513A (zh) * 2020-04-26 2020-07-17 广西师范大学 一种可优化视觉遮挡场景的光场绘制的方法
CN111429513B (zh) * 2020-04-26 2022-09-13 广西师范大学 一种可优化视觉遮挡场景的光场绘制的方法
CN112419459A (zh) * 2020-10-20 2021-02-26 上海哔哩哔哩科技有限公司 烘焙模型ao贴图的方法、装置、计算机设备和存储介质
CN112419459B (zh) * 2020-10-20 2023-09-08 上海哔哩哔哩科技有限公司 烘焙模型ao贴图的方法、装置、计算机设备和存储介质
CN112734896A (zh) * 2021-01-08 2021-04-30 网易(杭州)网络有限公司 环境遮蔽渲染方法、装置、存储介质及电子设备
CN112734896B (zh) * 2021-01-08 2024-04-26 网易(杭州)网络有限公司 环境遮蔽渲染方法、装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN102592305A (zh) 自适应的屏幕空间环境光遮蔽方法
Kontkanen et al. Ambient occlusion fields
US9569885B2 (en) Technique for pre-computing ambient obscurance
US7212207B2 (en) Method and apparatus for real-time global illumination incorporating stream processor based hybrid ray tracing
Engelhardt et al. Epipolar sampling for shadows and crepuscular rays in participating media with single scattering
US20050041023A1 (en) Method and apparatus for self shadowing and self interreflection light capture
CN101371273A (zh) 视频序列的分割
US10163247B2 (en) Context-adaptive allocation of render model resources
Akinci et al. Screen space foam rendering
Woo et al. Shadow algorithms data miner
CN103903296A (zh) 虚拟家装室内场景设计中的阴影渲染方法
US20230005211A1 (en) Denoising techniques suitable for recurrent blurs
Papaioannou et al. Real-time volume-based ambient occlusion
Eisemann et al. Efficient real-time shadows
US10970913B2 (en) Systems and methods for texture-space ray tracing of transparent and translucent objects
CN106355631A (zh) 虚拟现实中实时阴影的显示方法
US10861218B2 (en) Methods and systems for volumetric reconstruction based on a confidence field
Chiu et al. GPU-based ocean rendering
CN109949337A (zh) 基于高斯混合背景模型的运动目标检测方法及装置
Nair Using Raymarched shaders as environments in 3D video games
Kim et al. Subsurface scattering using splat-based diffusion in point-based rendering
Bischoff et al. A Real-time Global Illumination Approach for High Resolution Reflective Shadow Maps in Open World Scenes.
Lili et al. Real-Time approximate soft shadow rendering with bidirectional penumbra map
Wronski Volumetric fog and lighting
Macedo Efficient shadow anti-aliasing techniques using silhouette revectorization

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120718