论文部分内容阅读
随着计算机图形学和虚拟现实技术的不断发展,大规模虚拟场景的实时交互绘制技术在模拟仿真以及三维交互设计等方面表现出日益广泛的应用,成为诸多研究领域面临的基本问题。近年来,由于三维建模技术的快速发展和图形学应用的不断扩大,为了实际需要,许多应用系统中往往存在了大量的运动物体(比如虚拟运动群体、自然灾害现象等),这些运动物体在为场景带来勃勃生机的同时,也为实时绘制带来了一定的困难。这主要是因为运动物体不仅会使场景的空间结构发生变化,还会使可见性变得非常不稳定。因此,通常的可见性计算方法在大量动态物体面前表现出较大的局限性。
在公共安全事件模拟中,危机过程的实时绘制正面临了这样的问题。危机事件大多发生在大型公共场合,因此静态场景往往规模庞大且复杂;而作为事件主体的动态人群,不仅精度较高,而且数量众多,尤其因为其不断运动使得通常的场景加速算法变得无效,给这种动态人群存在的大规模场景实时绘制带来很大的困难。
本文从公共安全事件模拟中危机过程的实时绘制出发,围绕上述问题展开研究,论文提出了危机过程实时绘制的研究框架,并从场景层次组织、动静态场景的可见性判断等方面深入研究了相应的绘制加速技术,并成功应用到仿真系统中,取得了有效的加速效果。具体来说,论文的主要贡献体现在以下几个方面:
●针对大规模复杂场景,提出了一种对象约束的场景自适应分割重组算法。该算法对场景进行基于空间层次的二叉分割重组,并对分割后的节点赋予需要的属性信息,最终形成一个二叉场景层次树。为了使最终得到的场景层次在保留原有信息的基础上具有更鲜明的空间层次性和可控的尺寸,算法重点考虑了分割平面的选取方法以及处于分割边界的节点的分配与分割情况,并提出了相应的约束规则,使分割过程能够自动适应模型及实体大小而判断其合理的分配方式,该工作成为后续可见性加速方法的基础。
●提出了一种基于大尺寸遮挡物的硬件遮挡剔除算法。该方法分析建筑物、楼房等大型公共设施场景的结构特点,提出直接选取墙面和地面等面积较大模型较简单的节点作为遮挡物的遮挡剔除方法,利用这类节点的遮挡性强的优势,在保证遮挡效率的同时可以避免深度排序带来的时间消耗。同时,本文实现了一种基于统计的遮挡剔除优化算法,利用可见性的历史信息对当前查询进行指导,尽可能减少场景中不必要的遮挡查询,使绘制效率得到有效提高。在此基础上,算法合理的安排了提交和获取查询的时间,并利用等待结果的空闲时间进行优化计算,使CPU能够更有效的进行工作。
●提出了一种基于路径信息的大规模运动群体可见性判断方法。该方法利用已知的群体仿真路径信息,在预处理时将每个位置上的虚拟个体绑定到相应的场景空间中,在实时绘制时,则利用预处理的结果查找与当前个体位置点相对应的场景节点,将场景节点的可见性直接赋予到个体上。该方法并不通常的对每个个体提交遮挡查询,因此可以避免数据结构的更新和大量遮挡查询引入的延迟;算法借助了离线遮挡剔除的思想,占据绝大部分计算时间的个体绑定工作可以在预处理时完成,为实时绘制节省了大量时间,剔除和绘制效率都可以得到很大提高。
●综合上述加速方法,实现了一个用于大规模场景中动态群体实时绘制的引擎,该引擎作为公共安全项目的绘制支持模块,已得到成功应用。同时,为了配合绘制引擎的使用,开发了一个场景预处理工具软件StageEditor,该平台主要执行场景分割预处理、群体仿真数据预处理、场景编辑以及加速绘制测试等工作,也已经得到成功应用。