英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
摘要
我们对于实时渲染方面提出了基于辐射度方程的一个基本的算法。直接操作再已贴图的场景中,该算法简单快速同时提供照片级别的画面无需使用任何内核或离散的方程。使用图形硬件可以将每次渲染时间降到几秒,这个确定的解决全局光照随机漫游的问题,并且这个方法降低了抖动的差异抽样。
介绍
为了提供真实的场景,我们可以通过辐射积分方程[Kaj86]来产生真实的图片。在漫反射的假设下,最流行的Fredholm积分方程和一个辐射度算法。在传统算法(CW93)下,辐射积分方程被投影成了几个有限的基,产生形式因子的矩阵。这些矩阵是场景元素的两次幂。对方程稀疏的表达,提出了分层的基本方程的形式。不仅如此,Galerkin算法需要保存内核并且离散化积分形式。除了为了阴影表达生成高度复杂准确的模型,这些投影也带来了一个离散化的错误。
从蒙特卡洛模拟领域开始,算法不再离散内核成为可能,使用随机积分将方程投影到一个有限基去。与随机方法类似,一个基于底差异采样的确定的粒子模拟方案被提出[Kel96b]。
这个确定的方案在出众的频率上覆盖且与随机算法相比没有差别。在双向路径跟踪[LW93, VG94]中,即使是离散化的辐射度方程也被规避了,但是渲染时间远远没到实时这个地步。另外,图形硬件已经支持通过扩展光源[HA90, Hei91, SKvW 92]来实时渲染带贴图场景中的光照与阴影。在我们的方法中,我们组合了确定性的部分模拟光源,例如:在真随机漫游的原则、有良好的硬件支持来渲染辐射方程、既不使用内核也不使用中间形式的积分投影的情况下,从而导致一个快速、健壮并且简单的实现过程。
在上述介绍之后,在文章的第二部分,我们简述了全局光照模型的数学问题。第三部分解释了新的渲染过程和他对应的蒙特卡洛积分基真随机步行原理。第四部分在指出一些基础算法的拓展,有差异采样来达到抗锯齿效果的,还有镜面效果,为了实时性做的一些修改等。关于算法的讨论在第五章。最后一章进行了总结并指出了下一步研究方向。
我们的眼睛接受辐射,单位是单位区域单位角上接受到的能量。在真空中的辐射度方程[Kaj86]:.其中Omega;是一个集合,集合中有在y点上沿着法线的表面上的单位半球上的所有方向。S是场景中的表面。函数h返回当一条从y沿着的射线击中的第一个点。把辐射度沿着法线投影到表面上,是一个射线方向与表面法线的夹角。辐射度L在y点沿着的值是源辐射与接受到的反射的辐射度之和。我们可以用下式表达:。
双向反射系数方程解释了表面材质的属性如颜色和光泽度。在一般设置下这个方程需要入射方向和辐射的反射方向以及位置y。在辐射度的设定中限定只有漫反射。所以辐射度方程也变成各向同性的了。
其中是贴图表面的漫反射率。给出四元组,全局光照问题包含包含一下形式的方程,无论是在辐射度设定还是全辐射方程中。这里有两种方式在检测方程,例如,在有限向量空间中正交基向量之和,适用于传统或者分层的辐射度方法。代替离散的积分方程的解决方法,必须要将他渲染到一个分离的流程中,我们直接选择,检测穿过像素被交点为针孔相机看到的画面是点P的方向。是基于像素的特征方程,是克罗内克函数。
新算法
我们这个新算法在场景中生成一个粒子模拟的漫反射光照度,使用基于蒙特卡洛积分的准随机漫游算法。然后图形硬件渲染一个有每个粒子的阴影被用来作为点光源。全局光照最终由将在积累缓存中的单张图叠加起来并显示结果。这个算法计算了通过像素平均辐射度:
定义为渲染这个动作,决定了穿过的至少一次辐射。如果辐射L被设定成能近似成一个密度为M的点光源群
其中是辐射度,是第i光源的位置,的应用于粒子以生成这个很快的算法。
应用于上的点光源能同时评估在图像矩阵上的所有像素通过一次标准的图形硬件光照流程,产出一个有带阴影的带贴图的场景经过shader的照片。在中的直接可见的光源匆忙的被渲染通过给合适的表面元素设置光照度。因此这个算法直接操作带贴图的场景并且不提供任何内核或者离散的积分形式。所以,没有网格的虚像会产生,也没有拓扑结构例如
一个翼边数据结构需要差值或者重叠系数评估。一个较少数量M(通常为50-300)的点光源是充分的,自从带繁重的本地通道计算的多步骤渲染,一个粗糙的辐射度解决方案足够提供真实感的图像。所以对这个算法的加速主要需要图形硬件的帧率,保证交互条件下的真实感图像生成。
3.1 准蒙特拉罗积分
和[Kel96b]类似,我们使用准蒙特卡洛积分的方法模拟积分。对以下的式子:
我们生成了N个采样点使用Halton Sequence。基于根反函数
这个s维度的halton低相差序列为。
其中是第j个主要的数字。注意到大片段中的每一个小片段,其中,
Halton Sequence中连续点是正交的,这些并不满足抖动或者N-rooks这些降低采样。另外,Halton点适合任何N独立于维度s。与N-rooks采样相比,任一维度一个随机的大小是的随机排列,并且存储了未知的质量,Halton点能生成任一i或者连续的通过[HW64]算法在一定速度下相比于传统的为随机生成器不需要额外的存储。
在计算机图形学中被积函数是不连续的,只允许非常悲观的错误上界作为积分模拟。不仅如此,数值上的证据表明[Kel95,Kel96a,Kel96b]在依赖于低差异采样的辐射度方程计算中最终在一个优秀的频率下生成了一个更为光滑的覆盖较随机采样而言。在[PTVF92]一个似乎有理的辩解给出了以为准蒙特卡洛方法上界的应用于非连续方程。对高维度来说,这个频率收敛于随机频率,但是对于,Halton点优于随机采样。上述讨论也应用于随机采样[Mit96],但是低差异方法是确定的因此不会有变化。
3.2准随机漫游
在真实感的应用中传递操作规定一次就是少于100%的以外辐射被反射。
所以Neumann序列覆盖并且能解决积分方程。加入(1),
在一些变换后,应用辐射设置我们得到
这里是光源的维持,是从视点穿过点的射线射向场景中击中的第一个点。检查yj和的双向可视性,1代表可视不然是0。
辐射密度代表经过j次反射后的源辐射度。这里是源光线上的一个点,并且接下来的在路径上的点 有射出的光线决定。拿场景的漫反射部分,规范操作能通过反射模拟,其中场景由K个表面元素Ak并且平均的反射率是。
就像[Kel96],辐射密度由粒子特性使用漫游算法模拟。在真实感场景模型中确切的漫反射率只有一个的小微分,我们能使用因数吸收并且避免俄罗斯轮盘赌吸收[AK90].所以从N个从光线开始的粒子,个粒子在第一次反射中不被吸收,个粒子在第二次反射中幸存。所以M个被生成的辐射点由一下方程限定。
因此在N是线性的在平均场景反射率中,其中l是等效光程长。随机漫步算法现在通过N个点光源模拟,个点光源模拟。其中粒子由Halton序列生成。因此,粒子在低能量的反射操作中聚集,归因于规范操作贡献了图像中最重要的部分,因此充分挖掘了低差异采样的优势
3.3 实现
及时辐射度算法的伪代码已经由图4给出了。要通过低差异序列生成离散的密度近似值pj,我们首先固定一束光可以射出N个粒子,。通过一个等高的y0([Shi92]),头两个Halton序列分量映射到光源表面的单位正方形上,生成携带能量的起点。在多光源的例子中,第一束光源由[Kel96b]的成分分析法选择,然后等高量可以应用了。开发Halton序列的属性会使每段序列有小的差异,第一个点通常射一条方向为的线段,使用
其中关于在密度中cos项的方向已经被分散了。在下一个击中点粒子的辐射度被削弱。从这些粒子中第一个继续他们的路线,重复漫反射发散流程知道没有粒子剩余。开始点和随机漫游中接下来的击中点接着形成离散的密度近似值,这些数值用来给使用硬件函数如glRenderShadowScene,场景带着阴影被渲染出来并且点光源位于y带有强度的能量。式子被用来补偿衰减通过,让每一个画面的贡献度都一样重要。最终蒙特卡洛积分将所有画面通过1/N的权重累加起来。
4.拓展
这个快速,确定性的辐射度算法在前几章已经引出了,可以渲染漫反射全局光照至照片。通过这个新的低差异采样概念,我们面对了抗锯齿问题为了增加在低采样频率通过随机元素下画面质量。接着反射特效加入了这个算法。最后指出了一些为实时场景漫游做出的修改。
4.1 抖动的低差异采样
让我们看一下图5的二维低差异采样序列,基于Radical Inversion方法的低差异序列是平行于网格的。这个网格结构代表了一个最小的距离属性,是一个显示的层,但是容易产生锯齿。新的抖动低差异采样的概念加入了蒙特卡洛和准蒙特卡洛积分用过使用低差异点作为一个层。模拟网络的分辨率是1/N,将光栅格子里的低差异采样点随机偏移一个位置,,其中是一个随机的变量,假设采样点仍然在单元中间。从图5中可以明显看出抖动二维低差异重采样点是N-rooks采样的一个特例。
但是Hammersley点不需要存储随机的排列。他们显式的就是一个低差异的排列。
为了应对锯齿而采用超采样,二维抖动Hammersley序列比标准方差采样有更快的覆盖率。这可以从图6看出来,其中均方根误差被标出对抗采样率N在一个试验中其中图8中场景的采样率在1到64的图像与最大640帧每像素做比较。
在我们的新算法中,根据路径数字i,第Xi个Hammersley序列对每张图由路径中的粒子提供。使用[HA90]中的采样方法,硬件抗锯齿,就像在一些图形加速卡里面,变得很冗余。考虑随机漫游,Halton向量的分量必须要在不同的方向上抖动。从光源开始我们有N个粒子,其中坐标轴将抖动,在下一步只有个粒子被跟踪了,所以抖动范围是,等等。通过这个过程锯齿被消除了,甚至增加了收敛率。
4.2 镜子特效
为了增加镜面特效,我们首先让Tmn使用全BRDF在硬件渲染光线流程,开启反射高光能在图8中看见。在粒子生成阶段,通过一个随机的流程每一个表面将被测试变成高光或者漫反射根据BRDF[CRMT9,War92]。举个例子万一一个反射的虚拟光源被生成了,射线的起点被高光材质镜像了。虚拟光源现在照亮了场景在金字塔跨越自身。
并且反射元素的轮廓使用[DB94,Die96].注意虚拟光源仅仅可以被应用在平面多边形阶段。然后接下来的粒子被随机分散通过反光阶段的BRDF。粒子击中反射表面产生一个虚拟光源M并且引起造成低采样路径伸长一个随机片段。如果图形硬件支持聚光灯光源并且粒子携带了入射的方向,甚至更多的基本光照,举个例子,带有分布,并且焦散线也可以被模拟。最后可见反射物体可以被光线追踪或者高级图形硬件单独的渲染出来。
4.3 实时漫游
这个算法到目前为止只提供照片。在动画环境,准随机漫游被跟踪固定条数的路径由Halton序列生成由[Kel95,Kel96a]提出。所有由一条路径提供的照片被积累在一起并且结果照片由时间生成。保持最后N幅照片被积累并且显示,因此显式提供暂时的抗锯齿。对于路径长度我们挑选了最长的路径保持随机漫游过程
然后图像加速器的最大帧率一次下降了,允许实时渲染频率(譬如在图7的场景中N=64生成的lmax=7的),并且算法直接操作在场景图像上,动态场景能被对待不带更加好的效果。
使用硬件映射光照图,方法[HH96]归纳了这个方法生成另外一种方法用来对静态场景做实时漫游。替代使用抖动采样和p=0只有直接光照,我们代替了[HH96]的光采样通过离散密度模拟辐射度。通过简单的增强[HH96]的算法渲染全局漫反射光照写入贴图,交互性可以显示出来。包括考虑内存使用情况,辐射方程的解决方案已经离散到了贴图中,当贴图分辨率选取太小的时候回有可见的虚像。
5.算法的讨论
图4的算法在图7中被描述出来。对一个N=10的路径单一图片通过红色点光源生成。
另外,累加的结果条路径(举个例子,M=20,42或者147图片在PAL分辨率720*576像素)被显示出来。场景中的图片402个四边形提供在Silicon的RealityEngine引擎上75MHz处理器勇士24s计算阴影算法。举个例子,通过模拟阴影体为每一个图元在深度缓存上。使用阴影技术将最终产生至少比算法快2倍。这个指出我们的算法的性能主要依赖硬件渲染速度,粒子模拟能在瞬间生成。需要指出光滑的阴影和非直接光照将会被火的而不要任何的网络,这个将多边形的数量上涨了一倍。
两个问题的算法变得明显在非常低的采样率。第一个问题是弱点在运算符Tmn上,在点光源和点的距离接近零值(参见图7),然后进入帧缓冲是并将剪最大可表示的值。第二个问题是每个灯点颜色的结构有很大的影响对整个场景的颜色。因为所有图像加权累积图像,然而,上述情况之一的影响最多的秩序,在大多数情况下几乎没有可感知的。
我们访问图形硬件是上面的限制的例子,所以我们利用阴影缓存和眼射线一致性,来模拟硬件评估为点光源的光线追踪。由39584个图元组成的场景会议室,N被选择独立扩展光源的数量,如图9所示,只有N=128条路径248光源给场景用。
自从算法直接作用于离散动画的场景图没有额外的存储环境,循环图用于植物建模,建模的详细程度很容易可以逼真地呈现。唯一的额外的数据结构需要一个空间顺序,如使用一个BSP树加速射线射入。一方面它可以生成离散密度近似的光辉和附加这些点光源的场景描述,例如MGF或VRML。然后最终的渲染过程,即加载场景图点光源和照明,不需要对射线枪击事件空间秩序。另一方面可以使用BSP与骗子呈现类似于[SLS 96]和层次剪裁,加快帧每秒的速度。这些技术尚未纳入并,用于测量的时候,但降低算法的时间复杂度的常数,在路径的数量可
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[141304],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。