基于高度图的微结构表面全局光照实时绘制方法技术

技术编号:4003621 阅读:338 留言:0更新日期:2012-04-11 18:40
本发明专利技术提出一种基于高度梯度图分析的全局光照实时绘制方法。给出面向微结构表面对象实时绘制的全局光照计算模型,将光照计算近似分解为环境光入射、光源直接光照和一次交互漫反射等三个分量的计算。定义微结构高度梯度图,并据此构建可见点的局部最高点集合。在环境光计算中,本发明专利技术提出一种自适应环境光遮挡计算,借助局部最高点集合计算遮挡角。在直接光照中,给出一种微结构阴影的修正方法,搜索入射光方向的最近局部最高点剖面,通过比较剖面内光线投影与局部最高点的遮挡角,近似确定由微结构造成的阴影区域。最后根据可见点的局部最高点集合确定一次交互漫反射的采样范围,进行渗色处理。整个全局光照计算方法在图像空间完成。

【技术实现步骤摘要】

本专利技术涉及高度图的微结构表面全局光照实时绘制。
技术介绍
现实场景中存在大量具有不平滑表面的对象,这些微结构表面将对光线传播产生 影响,会表现出细粒度的自阴影、环境光遮挡、渗色等全局光照效果。因此,描述局部微结构 细节与光线的交互,真实再现这类对象的光照效果,可以使得图像细节更为丰富、细腻,极 大地提高绘制效果的逼真性。微结构表面对象细节多、几何结构复杂,光线跟踪等传统的全局光照方法存在 着计算量大,难以用于实时绘制等问题。Tong等提出将双向纹理函数(Bidirectional texturefunction, BTF)合成到任意表面上的方法,通过预计算微结构表面样本的BTF,并 建立对象表面与BTF的映射关系,可根据光源和视点运动情况进行实时快速采样。在此 基础之上,双尺度辐射度传递(Bi-Scale Radiance Transfer, BRT),壳纹理函数(Shell texture function, STF)和薄壳福射度纹理函数(Shell Radiance texture function, SRTF)等方法也对微结构表面对象的光照计算方法进行了深入的研究。但由于大量预计算 和纹理合成的存在,这类方法很难实时模拟动态可变形物体的光照效果。1)微结构表面光照计算的方法有Tong等提出使用表面纹理元来合成低精度模型表面BTF的方法,能够较好地表现 表面微结构随视点和光源变化的光照效果。但对于不能使用3D纹理元来表示的材质,不能 使用这种单尺度的方法。Sloan等提出了一种双尺度的辐射度传输方法,将辐射度分为全局和局部尺度。全 局和局部尺度的传输分别采用预计算辐射度传输(Precomputed Radiance Transfer,PRT) 和BTF,使绘制后的BTF材质表面呈现全局辐射传输光照效果。但网格上的顶点分布稠密、 计算量较大,而且只能处理低频光照。为了计算非均勻半透明微结构模型光照,Chen等建立一个包括薄壳层和均勻内核 的模型,并引入STF计算薄壳层的表面辐射度,来呈现非均勻半透明物体表面微结构的自 阴影、遮挡、镜面反射、轮廓及次表面的散射。但运行阶段计算量较大,无法达到实时。为了能够实时渲染非均勻半透明物体,Song等提出的预计算基本量的SRTF,在运 行阶段直接用于计算模型表面辐射度,实现实时渲染。但在渲染时忽略了由表面微结构形 成的细节轮廓。2)环境光遮挡的计算方法有Kontkanen等于2005年提出了环境光遮挡场,并基于此来预计算物体间的环境光 遮挡,从而实现阴影的实时绘制。2006年,Hegeman等提出了一种近似环境光遮挡方法,可满足复杂动态场景的交 互渲染需要,但渲染质量不是很高。为了提高绘制效率和渲染质量,Shanmugam等于2007年提出了一种硬件加速的环境光遮挡方法,将环境光遮挡分解为能够独立计算的高频和低频两部分,实现了复杂动态 场景的高质量实时渲染。为了进一步提高绘制效率,近年来越来越多的研究工作转向基于屏幕空间的环境 光遮挡近似计算。Bavoil等于2008年首次提出了基于屏幕空间的环境光遮挡(Screen SpaceAmbient Occlusion, SSA0)方法,通过比较当前点与周围点深度,来确定环境光被遮 挡的比率。但该方法需要人工设置采样数目,并且在改变物体的和视点的相对位置时会产 生视觉上的跳跃现象。同年,Bavoil等提出图像空间地平线环境光遮挡方法,基于视点坐标下的场景深 度图,计算被遮挡点周围的地平角关系来得到该点的被遮挡程度。Dimitrov等提出了地平 角分裂的环境光遮挡方法,该方法通过计算屏幕空间下点的地平角遮挡关系与实际法线遮 挡关系的和,来得到最终的遮挡关系。Ritschel等于2009年提出了屏幕空间方向光遮挡(Screen Space DirectionalOcclusion, SSD0)方法,在SSAO中加入方向光遮挡和一次交互漫反射,实现全 局光照在复杂动态场景中的实时绘制。3)图像空间光照计算的方法有Wyman于2005年提出基于图像空间的透明对象二次折射方法,在绘制一遍模型的 基础上,采用迭代插值方法来逼近二次折射点的空间位置,实现对透明对象的实时渲染。但 需要对模型进行预处理,不适用于可变形物体。为了消除预处理,Davis等于2007年提出计算折射光线在模型内部全反射的方 法,通过折半查找法来查找图像空间下光线在模型内部与模型多次反射的交点,在模型内 部递归式追踪光线直到光线射出模型或递归跟踪的深度达到规定的阈值。Manuel等也给出了适用于可变形透明对象的二次折射实时绘制方法,该方法不需 要任何预处理,结合动态深度图和折半查找法来有效地处理图像空间下光线在模型内的全 反射。基于图像空间的焦散绘制也是光照绘制的一项主要研究内容。Wyman等于2006年 最早提出图像空间的焦散绘制方法,采用光子映射的方法,实现焦散的实时绘制。但是通过 建立大规模均勻栅格点来跟踪光子,会导致绘制效率低,并且在非焦散汇聚点区域会产生 比较严重的噪声。2007年,Musawir等提出焦散映射方法,该方法主要包括两个部分生成焦散图纹 理和使用焦散图将焦散渲染到焦散接受体上。由于需要对折射几何体进行计算,这两种方 法都无法直接用于可变形物体的焦散渲染。Pankaj等采用焦散图和两表面折射相结合的方 法,实现了对可变形物体的实时焦散渲染。为了提高实时渲染的质量,Wyman采用分层的焦 散图方法,可以实时渲染高质量的焦散效果。2009年,Wyman又提出了使用延迟着色的自适应焦散映射方法。采用延迟着色思 想来自适应的发射光子,产生只包含相关光子的焦散图,而不需要渲染大量无关的密集光 子,极大提高了绘制效率。
技术实现思路
本专利技术要解决的技术问题是通过一种基于微结构高度梯度图的全局光照实时绘4制方法,实现对可变形物体微结构表面的实时全局光照的计算。本专利技术的技术解决方案为(1)全局光照计算模型,根据James Kajiya的渲染等式,几何对象上任意一个点P 的在wo方向的出射光照度Lo可以根据该点在各个方向上入射辐射度的积分求得,具体形 式见公式(1)。L0(P) = p(P) jQL,(P,Wi^Wl · n)dw(1)其中Li是入射光强度,wi是入射方向,η是P点的法线方向,P是对象表面的材 质属性BRDF,Ω是以计算点为中心,以该点所在平面为底面的单位半球。微结构表面对象几何细节丰富,局部区域就可能存在上万个微面。如果直接根据 该渲染公式计算几何关系和求取积分,计算量过大,方法难以实时。针对这个问题,本专利技术 给出一种微结构表面光照计算模型,将微结构表面的入射光近似分解为三个分量环境光 La,高频光源光照度Ls和一次交互漫反射光照度Ld。对于微结构表面,环境光La是指周围 环境对当前点的照亮程度,由于微结构表面细粒度的高度起伏较多,La需要根据当前点与 周围点的遮挡关系计算得到。高频光源光照度Ls是指方向光源或点光源对微结构表面点 的照明,需要考虑其对局部自阴影的影响。一次交互漫反射光照度Ld主要描述了周围微结 构区域对当前点的漫反射效果的影响。本专利技术通过公式(2)将上述入射分量进行叠加,来 近似计算微结构表面的入射光。Α(Λ本文档来自技高网
...

【技术保护点】
一种基于高度图的微结构表面全局光照实时绘制方法,其步骤依次为:(1)针对物体表面几何细节特点给出一种全局光照分解计算方法,以分别近似计算环境光、反射和一次交互漫反射等光照分量;(2)基于屏幕空间创建物体微结构表面的高度梯度图,然后根据微结构表面梯度的方向及其大小的分布来搜索对局部细节光照影响最大的方向和遮挡点,并建立局部最高点集合以指导各个光照分量的自适应地采样计算;(3)采用微结构表面阴影修正方法,通过纹理坐标将微结构高度场绑定在低精度模型表面,将带有微结构表面的对象的阴影计算分为两步:首先利用ShadowMapping计算低精度网格的阴影,接着采用梯度空间局部最高点集合遮挡计算来生成细节阴影。

【技术特征摘要】

【专利技术属性】
技术研发人员:王莉莉马志强杨峥赵沁平
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1