CN103679818A - 一种基于虚拟面光源的实时场景绘制方法 - Google Patents

一种基于虚拟面光源的实时场景绘制方法 Download PDF

Info

Publication number
CN103679818A
CN103679818A CN201310695708.9A CN201310695708A CN103679818A CN 103679818 A CN103679818 A CN 103679818A CN 201310695708 A CN201310695708 A CN 201310695708A CN 103679818 A CN103679818 A CN 103679818A
Authority
CN
China
Prior art keywords
area source
virtual area
scene
factor
texture
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.)
Granted
Application number
CN201310695708.9A
Other languages
English (en)
Other versions
CN103679818B (zh
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.)
Nanjing University
Original Assignee
Nanjing University
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 Nanjing University filed Critical Nanjing University
Priority to CN201310695708.9A priority Critical patent/CN103679818B/zh
Publication of CN103679818A publication Critical patent/CN103679818A/zh
Application granted granted Critical
Publication of CN103679818B publication Critical patent/CN103679818B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开一种基于虚拟面光源的实时场景绘制方法,步骤为:首先从视频纹理中获取一帧最为当前的亮度分布状态;然后利用GPU构造当前视频纹理的SAT;再将场景的原始面光源分为一组虚拟面光源,并保存每个虚拟面光源的相关信息;进而根据虚拟面光源的信息以及构造的SAT分别计算辐射因子
Figure DDA0000439718870000013
形状因子
Figure DDA0000439718870000012
以及可见因子然后将三因子的计算结果带入绘制方程,以累加获得每个场景绘制点的亮度,即获得原始纹理面光源的亮度分布,进行各场景绘制点光照的绘制;随视频纹理的变化,重复上述步骤,即可动态更新各场景绘制点的光照亮度。本发明可减少实时绘制过程中的采样率,从而减少数据处理的时间和占用的内存,同时保证实时绘制结果不受影响。

Description

一种基于虚拟面光源的实时场景绘制方法
技术领域
本发明涉及三维游戏和虚拟环境开发中的实时绘制技术,特别是一种支持动态纹理的基于虚拟面光源的实时场景绘制方法。
背景技术
光照技术是真实感绘制技术中最重要的组成部分,其最终目标是通过计算机生成与真实世界一致的光线传播与光线与场景交互效果。尽管该目标在现有条件下难以实现,但是研究人员还是提出了许多的光照算法来生成近似的结果。现实世界中的光照效果很多,从最简单的明暗变化到复杂的高光、软阴影、光渗、焦散等,均属于光照的范畴。现有的光照算法一般只支持其中一种或者几种效果,完整的光照效果生成是一项系统工程,需要复杂系统理论的支撑。本发明主要研究动态纹理面光源下的实时光照技术,光源的复杂性是光照技术中复杂性来源的重要部分。动态纹理面光源主要应用于光照明设计、虚拟现实系统、电子游戏以及其他高真实感需求的图形应用,用于进一步提高画面的真实感以及用户的沉浸感。
目前,能够支持动态纹理面光源,并达到实时性能的绘制方法可以划分为三类。
第一类方法是针对简单多边形面光源的解析方法。此类方法通过GPU加速可以达到实时的性能,可参考文献:(1).James Arvo.Applications of irradiance tensors to the simulation ofnonlambertian phenomena.In Proceedings of the22nd annual conference on Computer graphicsand interactive techniques,SIGGRAPH’95,pages335–342,New York,NY,USA,1995.但是此类方法目前只支持简单变化的多边形面光源,无法支持光亮度分布复杂的纹理面光源。
第二类方法是基于点光源采样的面光源光照方法。该类方法将面光源采样为许多的点光源或者虚拟点光源(virtual point light,VPL),然后利用多点光源的方式处理,可参考文献:(1)Carsten Dachsbacher and Marc Stamminger.Reflective shadow maps.In Proceedings of the2005symposium on Interactive3D graphics and games,I3D’05,pages203–231,New York,NY,USA,2005.但是为了产生高真实感的图像,此类方法需要成千上万的采样点才能达到。传统的点采样方式还存在走样问题,特别是在采样点不充分的情况下会在局部产生光亮斑。
第三类方法是基于预计算辐射度的面光源光照方法,可参考文献:(1).Thomas Annen,Jan Kautz,Fr′edo Durand,and Hans-Peter Seidel.Spherical harmonic gradients for mid-rangeillumination.In Proceedings of the Fifteenth Eurographics conference on Rendering Techniques,EGSR’04,pages331–336,Aire-la-Ville,Switzerland,Switzerland,2004.但此类方法需要一个相当耗时以及耗内存的预计算过程,同时对场景的动态性支持不佳。
发明内容
本发明要解决的技术问题为:通过采用虚拟面光源这种面光源表达和采样方式,实现光亮度分布复杂的纹理面光源的实时场景绘制,减少场景光照实时绘制过程中的采样率,从而减少相关数据处理的时间和占用的内存,同时保证场景光照的实时绘制结果不受影响。
本发明采用的技术方案具体为:一种基于虚拟面光源的实时场景绘制方法,包括以下步骤:
(1)从视频纹理中获取一帧最为当前的纹理面光源的亮度分布状态;
(2)利用GPU构造当前视频纹理的SAT(summed-area table);
(3)将场景的原始面光源分为一组虚拟面光源,并保存每个虚拟面光源包括法向、空间坐标、大小的相关信息;局部面光源下的绘制方程简化形式如下:
L r ( y , ω r ) ≈ Σ k = 1 M { ρ ( y ) L S k F y , S k V y , S k } - - - ( 6 )
其中:y为场景绘制点,S为给定面光源,Sk为给定面光源S中的任一虚拟面光源,ρ为场景绘制点所在物体的BRDF值,为场景绘制点接受到虚拟面光源Sk的入射光线的辐射亮度,Lr(y,ωr)为场景绘制点y向ωr方向反射的总的出射辐射亮度;式(6)中包括和每个虚拟面光源相关的因子:函数V即可见因子
Figure BDA0000439718850000023
返回场景绘制点位置与虚拟面光源位置之间的可见性,函数F即形状因子
Figure BDA0000439718850000024
返回虚拟面光源表面与场景绘制点所在表面的几何关系;即辐射因子,为各虚拟面光源Sk表面上单位面积所发出的辐射能量;
(4)根据虚拟面光源的信息以及构造的SAT分别计算辐射因子
Figure BDA0000439718850000028
形状因子
Figure BDA0000439718850000027
以及可见因子
(5)将辐射因子
Figure BDA00004397188500000210
形状因子
Figure BDA00004397188500000211
以及可见因子
Figure BDA00004397188500000212
的计算结果带入式(6),累加获得每个场景绘制点的亮度,即获得原始纹理面光源的亮度分布,进行各场景绘制点光照的绘制;
(6)随视频纹理的变化,重复步骤(1)至(6),动态更新各场景绘制点的光照亮度。
本发明的步骤(1)至(6)处理可利用CPU与GPU的组合来完成,其中CPU用于从纹理面光源中获取当前视频纹理和获取场景,以及生成虚拟面光源VAL(virtual area light);GPU具有强大的图像处理性能,在本发明中用于SAT的构造、辐射因子、形状因子和可见因子的计算,以及计算可见因子之前阴影图的生成,和最终场景的绘制。
局部面光源下的绘制方程推导过程为:现有技术中,给定面光源S,令Li为场景中的绘制点接受到来自面光源S的入射光线的辐射亮度,并以光源S的位置x和方向ωx→y作为Li的参数;不考虑物体间的相互反射影响,场景中的每个绘制点的位置y向ωr方向反射的总出射辐射亮度Lr为:
Lr(y,ωr)=∫sρ(ωx→y,y,ωr)Li(x,ωx→y)G(x,y)V(x,y)dx          (1)
其中,G(x,y)是未考虑遮挡关系的几何项:
G ( x , y ) = cos + θ x cos + θ y π | x - y | 2 - - - ( 2 )
式(2)中θx表示光源采样点x处的法向和方向ωx→y之间的夹角;θy表示场景采样点y处的法向和方向ωy→x之间的夹角;函数V返回x与y之间的可见性,ρ代表场景中绘制点所在物体的材质BRDF值;
将原始纹理面光源采样为M个虚拟面光源Sk;则每个虚拟面光源上的光强度分布可近似为均匀,进而对于每个虚拟面光源而言,Li是一个常量;
进一步假设场景中只包含漫反射表面,则绘制方程可以简化为:
L r ( y , ω r ) ≈ Σ k = 1 M { ρ ( y ) L S k ∫ S k G ( x , y ) V ( x , y ) dx } - - - ( 3 )
其中
Figure BDA00004397188500000310
即与各虚拟面光源Sk相关的辐射因子,是各虚拟面光源Sk表面上单位面积所发出的辐射能量;
定义式(3)中的几何项的积分和可见性的积分,即与各虚拟面光源相关的因子:形状因子
Figure BDA0000439718850000037
和可见因子
Figure BDA0000439718850000036
F y , S k = ∫ S k G ( x , y ) - - - ( 4 )
V y , S k = ∫ S k V ( x , y ) - - - ( 5 )
将式(4)、(5)的形状因子和可见因子
Figure BDA0000439718850000039
带入式(3),得到局部面光源下的绘制方程简化形式:
L r ( y , ω r ) ≈ Σ k = 1 M { ρ ( y ) L S k F y , S k V y , S k } - - - ( 6 )
SAT技术为现有技术,其能够支持快速计算表面内任意沿轴向的矩形块内的像素值的和,现有技术已经有很多利用GPU构造SAT的高效算法,其中包括递归倍增法,本发明即可基于这种算法来构造SAT,整个构造过程分解为横向和纵向两个阶段,每个阶段需要多遍计算,每遍计算都从前一遍计算的结果中累加前两个元素。
视频纹理SAT的构造主要是为了辐射因子的实时查询,辐射因子
Figure BDA0000439718850000044
的计算方法具体包括以下步骤:
2.1)针对当前视频纹理,利用GPU构造当前视频纹理的SAT;
2.2)从当前纹理面光源的SAT中,查询得到每个虚拟面光源的辐射因子。一旦获得了当前纹理面光源的SAT,就可以非常直观的得到每个虚拟面光源的辐射因子。对于SAT中的每个元素T(x,y),其值为原始纹理图中文素点t(i,j)到文素点t(0,0)之间的总和;而计算各虚拟面光源的辐照因子,只需查询该虚拟面光源的四个纹理坐标元素值即可;假设虚拟面光源Sk的左下角纹理坐标为(sx,sy),分辨率为l,则辐射因子Lsk可按下式计算:
L S k = [ T ( sx + l , sy + l ) - T ( sx + l , sy ) - T ( sx , sy + l ) + T ( sx , sy ) ] l 2 - - - ( 7 )
如果是漫反射的纹理面光源,则对每个虚拟面光源只需要考虑其空间位置,即给定虚拟面光源,场景中的每个绘制点都具有相同的辐射因子。
虚拟面光源与场景绘制点的几何关系由它们之间的形状因子确定,形状因子的大小表示绘制点能获得来自于虚拟面光源的能量占总辐射能量的比例。计算形状因子
Figure BDA0000439718850000045
时,在不考虑虚拟面光源与场景绘制点之间的遮挡关系的条件下,只考虑虚拟面光源微分表面与场景绘制点所在物体的多边形形状之间的形状因子,由式(4)进一步解析,通过现有技术Stoken定理,将面积分转换为该面的轮廓线积分,由于虚拟面光源是正方形,定义该正方形的边长为l,以虚拟面光源的中心点作为坐标中心,虚拟面光源法向作为z轴正向的坐标,形状因子可以解析表达为:
F y , square ⊥ = 2 π l l 2 + 4 r 2 c os - 1 ( 2 r 2 l 2 + 2 r 2 ) - - - ( 8 )
式(8)中r为场景绘制点y与虚拟面光源中心点之间的距离;
对于一般情况,即场景绘制点位置y不在虚拟面光源法向
Figure BDA0000439718850000046
上时,可通过几何关系变换,推导出相应的形状因子的计算公式为:
F y , square = ( ω x → y · N S k ) ( - ω x → y · N y ) F y , square ⊥ - - - ( 9 )
本发明将可见性从积分式中分离出来,可使得最终绘制效率大大提升。可见因子
Figure BDA0000439718850000054
的计算包括以下步骤:
(1)对每个虚拟面光源,构造以虚拟面光源的四个顶点作为光源坐标原点的阴影图;
(2)对于每个顶点,分别使用阴影图利用PCF算法计算其对绘制点的PCF值,即可见性百分比,这些值是0到1之间的浮点数;本发明采用的PCF算法为类似现有经典PCF算法的Multi-PCF算法,为在每个像素点的周围正方形邻域内采样和重构可见性。给定绘制点y,其四个顶点为(v1,v2,v3,v4),对于其中某个顶点如v1,其PCF值为:
V y , v i = Σ s , t ω s , t V ( x s , t , y ) Σ s , t ω s , t - - - ( 10 )
其中ws,t是像素点(s,t)点的权重;ws,t=f(yx-(s+0.5),(yy-(t+0.5));
(3)对四个顶点的PCF值做平均,即得到该虚拟面光源对绘制点的可见因子值:
V y , S k = Σ i = 1 4 V y , v i 4 - - - ( 11 )
对每个虚拟面光源和每个绘制点,一旦计算得到了如上的三个因子,就可以按照步骤(3)中的式(6)进行每个绘制点的光照亮度绘制,进而绘制出整个场景。
本发明处理局部面光源需要同时考虑面光源的空间位置属性和辐射方向属性,因此从局部面光源产生的光强度不仅是方向的方程,也是空间位置的方程,而非像环境光源,只需要考虑光强度分布的方向性。因此为了获得虚拟面光源,本发明将场景中的原始面光源细分为一组虚拟面光源,每个虚拟面光源都足够小,其上的光能量分布可以近似为均匀。因此对于每个虚拟面光源,其和辐射亮度相关的属性只需要一个平均值,而不是其上每个像素点的值。利用现有可编程GPU的强大流处理能力,本发明可完美获得动态面光源下的直接光照系统实时更新绘制的性能。
本发明的有益效果是,通过采用虚拟面光源这种面光源表达和采样方式,同时提供这种表达方式下辐射因子、形状因子和可见因子的计算方法,解出纹理面光源下的绘制方程,实现了光亮度分布复杂的纹理面光源的实时场景绘制。本发明的的虚拟面光源表达和采样方式能够减少场景光照实时绘制过程中的采样率,从而减少相关数据处理的时间和占用的内存,同时保证场景光照的实时绘制结果不受影响。使得本发明可以很容易集成到三维游戏和虚拟环境系统中,以在这些应用中支持动态纹理面光源光照效果。
附图说明
图1是本发明中形状因子计算方法示意图;
图2是本发明中可见性计算方法示意图;
图3是本发明中绘制方法流程示意图;
图4是本发明中对原始纹理面光源的几种不同细分方案示意图;
图5是本发明绘制的结果和路径跟踪产生的结果对比图;
图6是本发明对会议室场景的实时动态光照效果图。
具体实施方式
以下结合附图和具体实施例进一步说明。
参考图3所示,本发明的方法包括以下步骤:
(1)从视频纹理中获取一帧最为当前的纹理面光源的亮度分布状态;此步骤利用CPU完成;此外CPU还负责场景的导入,和对场景原原始面光源的细分,生成虚拟面光源VAL,以便后续阴影图的生成和可见因子的计算;
(2)利用GPU构造当前视频纹理的SAT(summed-area table);
(3)将场景的原始面光源分为一组虚拟面光源,并保存每个虚拟面光源包括法向、空间坐标、大小的相关信息;图4展示了本发明对原始面光源的几种不同的细分方案;细分的越细,绘制结果就越逼真,但绘制的性能、效率会有所下降;反之亦然。局部面光源下的绘制方程简化形式如下:
L r ( y , ω r ) ≈ Σ k = 1 M { ρ ( y ) L S k F y , S k V y , S k } - - - ( 6 )
其中:y为场景绘制点,S为给定面光源,Sk为给定面光源S中的任一虚拟面光源,ρ为场景绘制点所在物体的BRDF值,
Figure BDA0000439718850000062
为场景绘制点接受到虚拟面光源Sk的入射光线的辐射亮度,Lr(y,ωr)为场景绘制点y向ωr方向反射的总的出射辐射亮度;式(6)中包括和每个虚拟面光源相关的因子:函数V即可见因子
Figure BDA0000439718850000067
返回场景绘制点位置与虚拟面光源位置之间的可见性,函数F即形状因子
Figure BDA0000439718850000065
返回虚拟面光源表面与场景绘制点所在表面的几何关系;
Figure BDA0000439718850000063
为辐射因子;
(4)根据虚拟面光源的信息以及构造的SAT分别计算辐射因子
Figure BDA0000439718850000064
形状因子以及可见因子
Figure BDA0000439718850000074
(5)将辐射因子
Figure BDA0000439718850000075
形状因子
Figure BDA0000439718850000076
以及可见因子
Figure BDA0000439718850000077
的计算结果带入式(6),累加获得每个场景绘制点的亮度,即获得原始纹理面光源的亮度分布,进行各场景绘制点光照的绘制;
(6)随视频纹理的变化,重复步骤(1)至(6),动态更新各场景绘制点的光照亮度。
视频纹理SAT的构造主要是为了辐射因子的实时查询,辐射因子的计算方法具体包括以下步骤:
2.1)针对当前视频纹理,利用GPU构造当前视频纹理的SAT;
2.2)从当前纹理面光源的SAT中,查询得到每个虚拟面光源的辐射因子。一旦获得了当前纹理面光源的SAT,就可以非常直观的得到每个虚拟面光源的辐射因子。辐射因子
Figure BDA0000439718850000079
按下式计算:
L S k = [ T ( sx + l , sy + l ) - T ( sx + l , sy ) - T ( sx , sy + l ) + T ( sx , sy ) ] l 2 - - - ( 7 )
如果是漫反射的纹理面光源,则对每个虚拟面光源只需要考虑其空间位置,即给定虚拟面光源,场景中的每个绘制点都具有相同的辐射因子。
计算形状因子
Figure BDA00004397188500000710
时,参考图1,在不考虑虚拟面光源与场景绘制点之间的遮挡关系的条件下,只考虑虚拟面光源微分表面与场景绘制点所在物体的多边形形状之间的形状因子,将面积分转换为该面的轮廓线积分,由于虚拟面光源是正方形,定义该正方形的边长为l,以虚拟面光源的中心点作为坐标中心,虚拟面光源法向作为z轴正向的坐标,形状因子可以解析表达为:
F y , square ⊥ = 2 π l l 2 + 4 r 2 c os - 1 ( 2 r 2 l 2 + 2 r 2 ) - - - ( 8 )
式(8)中r为场景绘制点y与虚拟面光源中心点之间的距离;
对于一般情况,即场景绘制点位置y不在虚拟面光源法向
Figure BDA00004397188500000712
上时,可通过几何关系变换,推导出相应的形状因子的计算公式为:
F y , square = ( ω x → y · N S k ) ( - ω x → y · N y ) F y , square ⊥ - - - ( 9 )
可见因子的计算参考图2,包括以下步骤:
(1)对每个虚拟面光源,构造以虚拟面光源的四个顶点作为光源坐标原点的阴影图;
(2)对于每个顶点,分别使用阴影图利用PCF算法计算其对绘制点的PCF值,即可见性百分比,这些值是0到1之间的浮点数;本发明采用的PCF算法为类似现有经典PCF算法的Multi-PCF算法,为在每个像素点的周围正方形邻域内采样和重构可见性。给定绘制点y,其四个顶点为(v1,v2,v3,v4),对于其中某个顶点如v1,其PCF值为:
V y , v i = Σ s , t ω s , t V ( x s , t , y ) Σ s , t ω s , t - - - ( 10 )
其中ws,t是像素点(s,t)点的权重;ws,t=f(yx-(s+0.5),(yy-(t+0.5));
(3)对四个顶点的PCF值做平均,即得到该虚拟面光源对绘制点的可见因子值:
V y , S k = Σ i = 1 4 V y , v i 4 - - - ( 11 )
对每个虚拟面光源和每个绘制点,一旦计算得到了如上的三个因子,就可以按照步骤(3)中的式(6)进行每个绘制点的光照亮度绘制,进而绘制出整个场景。
实施例
本实施例在一台配置2.5GHz Intel Core2Quad CPU,4G内存和NVIDIA的GeForce GTS250图形卡的机器上实现,开发环境为OpenGL/GLSL和CUDA,生成的图片分辨率为512*512。
为了说明本发明生成的图像质量,图5比较使用本发明的绘制系统绘制的结果和使用路径跟踪生成的ground truth结果。本发明基于PBRT实现了一个简单的路径跟踪系统用来生成ground truth结果。图5显示一个斯坦福大学的bunny模型,该模型拥有69K个三角面片,并被一个带四种颜色分布的纹理面光源照射。路径跟踪结果采用10000跟路径生成每一个像素点,总的绘制时间约为1个小时,而使用本发明的绘制系统生成的图像的绘制时间小于20毫秒。从图5中可以看成本发明的绘制结果(左)和路径跟踪的结果(右)基本一致,说明本发明的绘制算法基本能够保证绘制的图像质量。特写部分显示本发明的交互式绘制算法能够有效的捕获局部面光源下产生的局部光照特性,尤其是局部纹理面光源下的软阴影特性。
图6的三张图片截自一段动画视频,图中的会议室场景(180K三角面片)由一个视频光源照射。这些动画图片显示场景光照随光源能量分布变化的改变。当纹理面光源上的能量分布实时变化时,场景的光照也需要实时计算并更新。本发明的绘制系统能够保证随着光源的动态变化,绘制的结果不会出现抖动。由于本发明的绘制系统不需要耗时的预计算,所以本发明的系统也支持动态场景。该组结果使用16个虚拟面光源,绘制的帧率为31FPS。

Claims (4)

1.一种基于虚拟面光源的实时场景绘制方法,其特征在于,包括如下步骤:
(1)从视频纹理中获取一帧最为当前的纹理面光源的亮度分布状态;
(2)利用GPU构造当前视频纹理的SAT;
(3)将场景的原始面光源分为一组虚拟面光源,并保存每个虚拟面光源包括法向、空间坐标、大小的相关信息;局部面光源下的绘制方程简化形式如下:
L r ( y , ω r ) ≈ Σ k = 1 M { ρ ( y ) L S k F y , S k V y , S k } - - - ( 6 )
其中:y为场景绘制点,S为给定面光源,Sk为给定面光源S中的任一虚拟面光源,ρ为场景绘制点所在物体的BRDF值,
Figure FDA0000439718840000012
为场景绘制点接受到虚拟面光源Sk的入射光线的辐射亮度,Lr(y,ωr)为场景绘制点y向ωr方向反射的总的出射辐射亮度;式(6)中包括和每个虚拟面光源相关的因子:函数V即可见因子,
Figure FDA0000439718840000013
返回场景绘制点位置与虚拟面光源位置之间的可见性,函数F即形状因子,
Figure FDA0000439718840000015
返回虚拟面光源表面与场景绘制点所在表面的几何关系;
Figure FDA00004397188400000112
即辐射因子,为各虚拟面光源Sk表面上单位面积所发出的辐射能量;
(4)根据虚拟面光源的信息以及构造的SAT分别计算辐射因子
Figure FDA0000439718840000014
形状因子
Figure FDA0000439718840000016
以及可见因子
Figure FDA0000439718840000017
(5)将辐射因子
Figure FDA0000439718840000018
形状因子以及可见因子
Figure FDA00004397188400000110
的计算结果带入式(6),累加获得每个场景绘制点的亮度,即获得原始纹理面光源的亮度分布,进行各场景绘制点光照的绘制;
(6)随视频纹理的变化,重复步骤(1)至(6),动态更新各场景绘制点的光照亮度。
2.根据权利要求1所述的基于虚拟面光源的实时场景绘制方法,其特征在于,辐射因子
Figure FDA00004397188400000111
的计算方法包括以下步骤:
2.1)针对当前视频纹理,利用GPU构造当前视频纹理的SAT;
2.2)从当前纹理面光源的SAT中,查询得到每个虚拟面光源的辐射因子;
对于SAT中的每个元素T(x,y),其值为原始纹理图中纹素点t(i,j)到纹素点t(0,0)之间的总和;假设虚拟面光源Sk的左下角纹理坐标为(sx,sy),分辨率为l,则辐射因子Lsk按下式计算:
L S k = [ T ( sx + l , sy + l ) - T ( sx + l , sy ) - T ( sx , sy + l ) + T ( sx , sy ) ] l 2 - - - ( 7 ) .
3.根据权利要求1所述的基于虚拟面光源的实时场景绘制方法,其特征在于,形状因子的计算方法包括以下步骤:
在不考虑虚拟面光源与场景绘制点之间的遮挡关系的条件下,只考虑虚拟面光源微分表面与场景绘制点所在物体的多边形形状之间的形状因子,将面积分转换为该面的轮廓线积分;由于虚拟面光源是正方形,定义该正方形的边长为l,以虚拟面光源的中心点作为坐标中心,虚拟面光源法向作为z轴正向的坐标,形状因子可以解析表达为:
F y , square ⊥ = 2 π l l 2 + 4 r 2 c os - 1 ( 2 r 2 l 2 + 2 r 2 ) - - - ( 8 )
式(8)中r为场景绘制点y与虚拟面光源中心点之间的距离;
对于一般情况,即场景绘制点位置y不在虚拟面光源法向
Figure FDA0000439718840000028
上时,通过几何关系变换,推导出相应的形状因子的计算公式为:
F y , square = ( ω x → y · N S k ) ( - ω x → y · N y ) F y , square ⊥ - - - ( 9 ) .
4.根据权利要求1所述的基于虚拟面光源的实时场景绘制方法,其特征在于,可见因子
Figure FDA0000439718840000027
的计算包括以下步骤:
(1)对每个虚拟面光源,构造以虚拟面光源的四个顶点作为光源坐标原点的阴影图;
(2)对于每个顶点,分别使用阴影图利用PCF算法计算其对绘制点的PCF值,即可见性百分比;给定绘制点y,其四个顶点为(v1,v2,v3,v4),对于其中某个顶点如v1,其PCF值为:
V y , v i = Σ s , t ω s , t V ( x s , t , y ) Σ s , t ω s , t - - - ( 10 )
其中ws,t是像素点(s,t)点的权重;ws,t=f(yx-(s+0.5),(yy-(t+0.5)),yx、yy分别指绘制点y的x方向分量和y方向分量;
(3)对四个顶点的PCF值做平均,作为该虚拟面光源对绘制点的可见因子值:
V y , S k = Σ i = 1 4 V y , v i 4 - - - ( 11 ) .
CN201310695708.9A 2013-12-17 2013-12-17 一种基于虚拟面光源的实时场景绘制方法 Expired - Fee Related CN103679818B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310695708.9A CN103679818B (zh) 2013-12-17 2013-12-17 一种基于虚拟面光源的实时场景绘制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310695708.9A CN103679818B (zh) 2013-12-17 2013-12-17 一种基于虚拟面光源的实时场景绘制方法

Publications (2)

Publication Number Publication Date
CN103679818A true CN103679818A (zh) 2014-03-26
CN103679818B CN103679818B (zh) 2016-08-17

Family

ID=50317259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310695708.9A Expired - Fee Related CN103679818B (zh) 2013-12-17 2013-12-17 一种基于虚拟面光源的实时场景绘制方法

Country Status (1)

Country Link
CN (1) CN103679818B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104299257A (zh) * 2014-07-18 2015-01-21 无锡梵天信息技术股份有限公司 一种基于室外太阳光实现实时动态阴影的方法
CN104346831A (zh) * 2014-11-01 2015-02-11 长春理工大学 用于近似绘制三维场景柔和阴影的方法
CN106485778A (zh) * 2016-10-19 2017-03-08 长春理工大学 利用位置敏感可见性平滑滤波实现三维场景近似柔和阴影绘制的方法
CN106991717A (zh) * 2017-03-16 2017-07-28 珠海市魅族科技有限公司 一种应用于三维场景下的图像处理方法和系统
CN107808370A (zh) * 2016-11-30 2018-03-16 湖南大学 一种基于区域求和的立方体图的图像滤波方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458823A (zh) * 2008-12-19 2009-06-17 北京航空航天大学 一种虚拟舞台环境下实时光照绘制的方法
CN101982838A (zh) * 2010-11-02 2011-03-02 长春理工大学 一种加速被面光源照射的3d虚拟场景的光线跟踪的方法
US20120007865A1 (en) * 2010-07-06 2012-01-12 Samsung Electronics Co., Ltd. Image processing apparatus and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458823A (zh) * 2008-12-19 2009-06-17 北京航空航天大学 一种虚拟舞台环境下实时光照绘制的方法
US20120007865A1 (en) * 2010-07-06 2012-01-12 Samsung Electronics Co., Ltd. Image processing apparatus and method
CN101982838A (zh) * 2010-11-02 2011-03-02 长春理工大学 一种加速被面光源照射的3d虚拟场景的光线跟踪的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIE GUO,JINGUI PAN.: "Direct Lighting under Dynamic Local Area Light Sources", 《PROCEEDINGS 6TH INTERNATIONAL CONFERENCE ON E-LEARNING AND GAMES,EDUTAINMENT 2011》 *
TIANCHAO LU ET AL.: "Real-time rendering of rough refraction under dynamically varying environmental lighting", 《2013 10TH INTERNATIONAL CONFERENCE COMPUTER GRAPHICS, IMAGING AND VISUALIZATION》 *
过洁,潘洁贵: "复杂面光源下实时绘制研究", 《系统仿真学报》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104299257A (zh) * 2014-07-18 2015-01-21 无锡梵天信息技术股份有限公司 一种基于室外太阳光实现实时动态阴影的方法
CN104299257B (zh) * 2014-07-18 2018-05-04 无锡梵天信息技术股份有限公司 一种基于室外太阳光实现实时动态阴影的方法
CN104346831A (zh) * 2014-11-01 2015-02-11 长春理工大学 用于近似绘制三维场景柔和阴影的方法
CN104346831B (zh) * 2014-11-01 2017-02-22 长春理工大学 用于近似绘制三维场景柔和阴影的方法
CN106485778A (zh) * 2016-10-19 2017-03-08 长春理工大学 利用位置敏感可见性平滑滤波实现三维场景近似柔和阴影绘制的方法
CN106485778B (zh) * 2016-10-19 2019-03-05 长春理工大学 利用位置敏感可见性平滑滤波实现三维场景近似柔和阴影绘制的方法
CN107808370A (zh) * 2016-11-30 2018-03-16 湖南大学 一种基于区域求和的立方体图的图像滤波方法
CN107808370B (zh) * 2016-11-30 2021-06-18 湖南大学 一种基于区域求和的立方体图的图像滤波方法
CN106991717A (zh) * 2017-03-16 2017-07-28 珠海市魅族科技有限公司 一种应用于三维场景下的图像处理方法和系统
CN106991717B (zh) * 2017-03-16 2020-12-18 珠海市魅族科技有限公司 一种应用于三维场景下的图像处理方法和系统

Also Published As

Publication number Publication date
CN103679818B (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
CN107452048B (zh) 全局光照的计算方法及装置
CN102096941B (zh) 虚实融合环境下的光照一致性方法
CN108984169B (zh) 一种跨平台多元集成开发系统
CN105787865A (zh) 基于游戏引擎和gpu并行处理的分形图生成与渲染方法
CN103679818B (zh) 一种基于虚拟面光源的实时场景绘制方法
CN108805971B (zh) 一种环境光遮蔽方法
EP2973425A1 (en) System and method for remote generation indirect illumination sources in three-dimensional graphics
CN103995700A (zh) 一种3d游戏引擎全局照明的实现方法
CN108986232B (zh) 一种在vr显示设备中呈现ar环境画面的方法
CN104091363A (zh) 一种基于屏幕空间实时的体积云计算方法
US11756255B2 (en) Method for constructing and traversing accelerating structures
CN105096370B (zh) 光线追踪的等价划分反锯齿方法
CN110033509A (zh) 一种基于漫反射梯度偏振光构建三维人脸法线的方法
CN103617593B (zh) 三维流体物理动画引擎的实现方法及装置
CN104112034A (zh) 用于实施路径空间滤波的系统、方法和计算机程序产品
CN113888398B (zh) 头发渲染方法、装置及电子设备
CN114022599A (zh) 一种线性变换球面分布的实时间接光泽反射渲染方法
CN110136239B (zh) 一种增强虚拟现实场景光照与反射真实度的方法
WO2024082927A1 (zh) 头发渲染方法、装置、设备、存储介质和计算机程序产品
US20180005432A1 (en) Shading Using Multiple Texture Maps
CN110832549A (zh) 现实世界环境中虚拟对象的经过光线追踪的反射的快速产生方法
Zhdanov et al. Bidirectional ray tracing with caustic photon and indirect imphoton maps
WO2023088047A1 (zh) 一种渲染方法及装置
US20220203231A1 (en) Methods and Systems for Determining Decal Projections Intersecting Spacial Units in a Frame of a Game Space
Wang The Development of Ray Tracing and Its Future

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160817

Termination date: 20171217