您好!欢迎来到搜维尔虚拟现实超市! ,新用户?[免费注册]
我的订单|我的收藏|我的商城|帮助中心|返回首页
虚拟现实新闻>VR>行业资讯>行业知识

虚拟现实的核心技术与未来趋势

文章来源:搜维尔[SouVR.com] 作者:Frank 发布时间:2011年07月07日 点击数: 361 次 字号:
或光源的变化等,就必须更新受到影响而改变的热辐射值。这部分的技术目前尚未臻成熟,并不能应用在实时、互动的虚拟现实系统中。如何将整体照明的算法适宜地应用在虚拟现实是未来的趋势与研究的主流。至于动态热辐射法,我们将在本节的最后部分处理动态环境的技术中作介绍。

    现今用来加速图形显像的技术可以分为三个主要的范畴,即遮蔽性消除(visibility culling)、多层次精细度模型(level-of-detail modeling,LOD)和影像快取显像技术(image caching rendering)。

    遮蔽性消除 为了加速显像速度,必须尽可能地将视点所看不到的几何部分在显像前即予排除。在一般3D场景中,要减少所需处理几何的数目,最常利用的作法为称作视锥体消除法(view-frustum culling)的技术,意即在显像之前,把不在视点与视角所形成的锥体内的几何部分给予排除,如此显像时只需处理在视锥体内的数据;另外有所谓的背平面消除法(back-face culling)的技术 [29],作法是把和视角同向的几何面去除,它们的目的都在于务求显像时需处理几何量降低;背平面消除法对每个多边形而言,虽然计算简单,但应用到复杂的场景时仍是个负担。最近有研究将场景的多边形以阶层式的架构组织起来以支持实时的背平面消除法。接下来,是要把视锥体内看不到的几何去除即所谓的完全遮蔽性(exact visibility),这部份运算通常叫作隐蔽面消除法(hidden Surface removal,HSR);然而,在复杂的环境中,给定一个视点,要求得完全遮蔽性的代价纵使有硬件,如z-buffer,的帮助仍是十分昂贵;相反的,利用少许对现在视点造成最大遮蔽的阻挡物或几何,花费比较少的时间代价而把大多数看不见的部分先予以排除而求得较保守的保守遮蔽性(conservative visibility),然后再把多边形几何数据丢给显像硬件,是个可行的作法。保守遮蔽性的求法,是利用称作阻挡物消除法(occlusion culling)的技术,首先对空间进行切割,并对每个子空间决定数个潜在适当的阻挡物,而进行模拟时,则根据视点所在的子空间,决定数个适当的阻挡物,并以视点和这些适当的阻挡物产生阴影锥形体(shadow frustum),最后再将这些锥形体内的被阻挡物所遮蔽的几何予以排除。像建筑物的模型,整个模型被墙分隔成一个个区间(cell),区间之间仅透过像入口(portal)或窗户(window)相通,若只利用视锥体消除法的做法仍不足够。在[25]中的做法已成功地用在建筑物的巡访(walkthrough)系统中。此做法可分为三个步骤,1) 区间分割(cell segmentation),2) 区间至区间遮蔽性( cell-to-cell visibility),3) 视点至区间遮蔽性(eye-to-cell visibility)。在求区间至区间遮蔽性步骤中,延着模型中主要的不透明部份做分割;然后对于分割后的每一个区间做区间至区间遮蔽性的测试,即当一条视线(sight-line)存在于一个区间中的任一点到另一区间的任一点时,此两个区间之间的区间至区间遮蔽性就建立了。如此对于每一个区间,可以建立以此区间为根的 stab tree;最后在巡访中,根据使用者所在区间的位置、角度以及它本身的视角对前一步骤所建的 stab tree 进一步做遮蔽物消除的工作,而获得视点至区间遮蔽性,而得到所谓潜在可见集合(potential visibility set,PVS),再将之丢到计算机绘图硬件中做遮蔽面消除法和显像。这方法的缺点是只能用于室内建筑场景之中,而不适用于一般的室外场景。

    多层次精细度模型 遮蔽性消除可将显像的速度提升到只和可看见的几何资料量有关。然而,可看见的物体模型的几何数据量仍然可能十分庞大,尤其是非常精细复杂的模型。为了达成交互式显像速率,目前多层次精细度模型为一普遍使用的方法[6,11,21,24,27]。所谓多层次精细度,即是在环境中每一个物体皆具有数个不同层次精细度的多边形表示数据,而于视觉仿真中显像时,显像软件再根据使用者和物体之距离及其视角等决定物体该使用何种精细度之数据做显像。其用意在于: 因为物体模型是以多边形的方式呈现,因此只要减少在复杂的虚拟环境中的多边形面总数,便可加速显像速率,达成交互式显像速率。对于那些离观视点较远的物体,因其投影在视平面上可能只含少数像素,故以较低精细度的模型显像产生的影像和采用完整精细度的模型显像产生的影像相差细微,视觉上不易感受两影像间的差异,但在速度却有相当大的提升。我们可以针对那些离观视点较远、较偏离视线的或较不重要的物体,采用较为粗糙、简单的模型来代替,使得整个场景的多边形数较以所有物体都采用完整精细度模型少了许多,因此可大量减少硬件所需处理的多边形个数而大大地改善显像整个场景的速率。目前的VR软件都必须在仿真前产生数套不同精细度的简化模型提供给系统使用。此种做法我们称之为静态多层次精细度模型。因为两显像画面间多层次精细度模型的选取与切换很难达到理想,所以另一发展的趋势是在模拟中,在时间控制的条件下,我们动态地、依据视点视角地调整场景模型的精细度,实时产生显像所需的几何模型,称之为动态多层次精细度模型 [18]。

    影像快取显像技术 由于多层次精细度模型的技术对于同一物体必须产生多组不同精细度的模型,因此它须作前置处理并且耗费大量储存空间。且由于物体的几何复杂度被牺牲了,而造成显像时的失真;而影像快取显像技术不但没有上述的缺点,还可以结合多层次精细度模型技术的好处。所谓的影像快取显像技术,是指将物体以几何方式产生的影像或以其它方式所获得的真实影像数据以阶层式的架构保存起来,留待后面几个画面以此影像代替几何数据在进行显像时使用。它的基本作法为首先利用二元分割树(BSP tree)作空间分割,显像时,在二元分割树中的任一个节点上的物体都可显像在节点本身的影像快取(image cache)上,再利用二元分割树具备的深度排序功能来进行显像。而视点移动之后,上一个画面所产生的快取影像(cached image)依照某一准则来评估,若此快取影像还有效,则使用之以代替该节点上的几何数据显像;否则就产生一新的快取影像。此外,这种影像快取显像技术也容易配合多层次精细度模型的技术,如在同一结点储存多个层次精细度之模型,与利用画面间的相依性(frame coherence)的特性,在近观视点的节点内用多层次精细度模型的几何数据显示,以达到加速的目的 [22]。然而此种方法最大的限制在于它只在于静态环境中且对比较深远的场景才能真正发挥其效果。目前关于这方面之研究的方向与趋势仍在于如何成功地把显像技术应用在动态环境中。

    在实用的虚拟现实系统中,势必要加入能处理动态环境的技术。对于常见的以局部照明算法为基础的系统无法直接处理阴影计算,使得显像出的画面在整体空间感的表现上就比较差。于是出现了一些在局部照明的架构下产生阴影的算法。在这些算法中,常引用到阴影体积(shadow vo

共21页 您在第5页 首页 上一页 1 2 3 4 5 6 7 8 9 10 11 下一页 尾页 跳转到页 本页共有3415个字符
  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料