




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
虚拟战场中基于GPU的动态地形实时可视化技术研究,虚拟战场是指利用虚拟现实技术生成虚拟作战环境,通过计算机网络、计算机图形学、地理信息系统等交叉技术进行战略、战役、战术等交互仿真的应用。地形可视化指的是将地形的高程DEM数据绘制成3D模型,以便在虚拟的世界中进行实时地浏览。,在DEM中,地形空间被分割成规则的几何单元,通常是正方形,而每个几何单元代表了一个高程采样值。,在静态地形可视化中,地形的高程数据是不变的。,在动态地形中,地形的高程数据会被实时的修改。例如导弹爆炸生成弹坑,导弹撞击地面,修改地形模型和纹理,导弹爆炸生成弹坑,不同的导弹入射角,产生不同形状的弹坑,用细节层次(LOD)技术简化地形网格数据,车辆行驶产生轮胎痕迹,车痕,修改地形模型和纹理,用LOD技术简化地形网格数据,主要创新点,1改进的LOD算法LOD(LevelofDetail)技术采用各种细节层次、各种精度的地形模型来描述地形的整体或局部区域,从而达到“近处精细,远处粗略”的效果。LOD技术减少了所需要绘制的三角形数量,提高了系统的实时效率,保证了输出的地形图像具有一定的逼真度。,LOD地形网格近处密度大,远处密度小,1.1地形数据LOD的构建,我们首先将整个地形的高程数据分割成若干正方形的block其尺寸大小为257X257,并且以四叉树结构进行组织。如图,根节点block代表整个地形,每个父节点都被分成四个子块。而树的层次L越低,节点block的网格精度就越高。,为了进一步简化地形网格,从而加速地形绘制,我们将每一个block分成16个tile,每一个tile又分成16个tilelet。,1.2LOD的选择,每一个block或者tile的层次都有一个屏幕误差t:其中是地形区域的几何误差,D是视点到地形区域的最近点的距离,W是屏幕空间的像素宽,fovy是视场角。我们会根据t选择地形的LOD,使得t小于给定的误差阈值。,在实时运行中,先根据误差自顶向下的在四叉树中选择所需的block层次,得到一个粗略的简化地形:,然后根据误差选择每一个block中tile的层次,得到一个精细的简化地形。tile的简化方法就是去掉中间行以及列的顶点,得到新的网格层次。tile的简化方法可以在GPU中快速并行的执行。图中白色的顶点被去除,为了便于后续GPU算法的实现,我们将CPU内存中的block地形高程数据转化成block纹理图,存放于GPU存储器中。block纹理图中每一个元素的颜色值代表了对应顶点的高程值,它可以通过顶点处理器进行访问。,1.3视景体裁剪技术,视景体裁剪技术就是在绘制前剔除不可见的三角形。首先在CPU中进行初级裁减。红色表示处于视景体外部的tile,它们被直接剔除。黄色表示处于视景体内部的tile,它们被直接送入管线绘制。而灰色表示与视景体相交的tile,它们的tilelet被传输到GPU中进行二级裁剪。,为了减轻CPU的负担,我们用Vertexbufferobject(VBO)来建立一个几何模板用于传输tilelet。VBO是一个点阵,它描述了tilelet的索引信息。,通过VBO在GPU中找到tilelet四个角的顶点数据,然后就可以进行并行的二级裁剪。如图红色表示处于视野之外的tilelet,它们被剔出。这样就进一步减少了需要绘制的多边形数量,1.4动态再细分区域,原始的地形数据有一个最大分辨率,这个分辨率往往不足以表达动态地形的细节。所以我们引入动态再细分区域技术。该技术就是在发生地形形变的区域,用GPU对地形分辨率进行实时的扩展,加入新的顶点与多边形。,具体步骤如下:1)将最大分辨率为nXn的地形区域的高程数据转化为GPU中nXn的纹理图。2)用nXn的纹理图绘制并填满一个nXn的屏幕空间。对不匹配的纹理坐标点进行线性插值,从而得到一个nXn的纹理图。下图黑点为插值处:,3)将nXn的纹理图还原为nXn的高程数据。于是原来nXn的分辨率扩展为nXn。,nXn的地形高程数据,nXn的地形高程数据,2.物理模型与过程纹理,在虚拟战场动态地形系统中,为了生成实时的弹坑以及车痕,我们就要实时修改地形的高程数据。而这个操作依赖于弹坑以及车痕的物理模型。此外在改变地形表面几何特征的同时,还要改变地形表面的纹理特征。原始的单一纹理无法满足仿真的需求,因此这里提出了一种过程纹理的方法来描述地形表面细节上的变化。,2.1弹坑物理模型与过程纹理根据爆炸力学,我们设计弹坑模型如下,在导弹撞击地面所引发的爆炸事件中,由于导弹与着弹点区域的地形表面存在一个入射角,而导弹自身的冲量会在水平面上产生一个分量。这个分量就会改变弹坑的形状,因此我们设计了带方向Vc的弹坑模型。它是一个不对称的几何体。,为了生成弹坑的过程纹理图,我们采用了三种基本纹理图:焦土,岩石以及草地。由于弹坑中心区域受到爆炸的冲击最大,所以中心区域的地形表面主要由焦土构成。稍微远离弹坑中心的区域主要由岩石构成,而弹坑边缘区域则由草地构成。根据这一原理,我们对三种基本纹理图的元素颜色值进行加权平均运算,得到一个渐变的合成纹理图。公式如下,texturetileI是基本纹理图的元素值,percentagei表示权值。,2.2车痕物理模型与过程纹理我们根据经典的“压力-下陷”理论设计了车痕物理模型,公式如下。其中其中W表示轮胎的负载重量,b表示轮胎的厚度,D表示轮胎的直径,Kc表示粘聚因子,k表示裁剪模量,n表示下陷系数。Y就是轮胎压力作用在地形表面时,顶点高程值的偏移量。,车痕的基本纹理图有两个:上层地貌纹理图以及下层地貌纹理图。越靠近车痕的对称轴,地形表面的下陷越明显,这时主要是下层地貌纹理图。相反越靠近车痕的边缘区域,就主要是上层地貌纹理图。根据这一原理,我们进行加权平均运算,得到一个渐变的合成纹理图。其公式与弹坑纹理类似。,3.地形形变策略设计,地形形变策略直接影响着动态地形仿真的实时效率。它主要分为两个步骤:1)顶点偏移量的计算。2)形变地形的生成。以前的算法主要依靠CPU完成地形形变操作,这里我们将该操作移植到了GPU中,大大提高了实时效率。,3.1车痕地形形变策略,为了用GPU计算车痕地形的偏移量,我们首先将视点移动到车辆模型的底下,并且使其低于整个地形的最低点。然后使视点方向向上并垂直于水平面。最后将投影方式设置为平行投影,并使视口的大小囊括车辆所在的地形区域。这样就可以用framebufferobject(FBO)比较地形与车轮胎的顶点深度,如果轮胎深度大于地形深度则说明该顶点产生了下陷。将轮胎深度与地形深度之间的差值绘制到GPU中,就得到了车痕偏移量纹理图。,然后用GPU将对应的地形高程纹理图与车痕偏移量纹理图进行混合,将两者的数据进行减法运算。然后还原成地形高程数据,就可以生成车痕形变地形。,3.2弹坑地形形变策略,弹坑的偏移量是固定的,它可以由弹坑模型直接转换为偏移量纹理图,并且一直保存在GPU中。,然后根据弹坑中心点坐标以及弹坑方向,将地形高程纹理图与弹坑偏移量纹理图进行匹配与混合,就可以生成弹坑形变地形,4.动态地形中海量地形数据的管理,由于地形数据的海量性,在可视化过程中我们无法将全部的地形一次性的调入内存里。于是需要将整个地形数据分割成许多子区域(block),然后存储于分布式的外存设备中。在实时运行中,根据需要将数据在内存和外存之间进行读取和交换。为了高效的管理和调度海量地形数据,我们设计了一种基于GPU的海量地形管理方法,实现了弹坑以及车痕的动态地形管理。,4.1地形集群管理系统,地形集群管理系统通过连接大量的普通计算机作为存储节点,从而提供高可靠性、高性能、可扩充的网络存储服务。地形集群管理系统是独立于虚拟战场可视化系统的外部系统,专门进行地形数据的管理和调度。地形集群管理系统分为主节点服务器,元数据服务器,I/O节点服务器。,1)主节点服务器运行着两个主线程,一个是监听服务,负责监听地形可视化系统的数据请求;另一个是调度服务,负责根据地形可视化系统的请求向元数据服务器查询数据,并向I/O节点服务器转发请求。,2)元数据服务器记录着所有地形block数据的元数据。所谓元数据是关于地形block的地理空间信息,属性信息,存取方式,组织形式等等一些特征。元数据的作用是帮助数据使用者方便地理解和操作数据。,3)I/O节点服务器提供最终的数据存储服务和数据传输服务,它由许多分布式的存储设备构成。整个地形数据被分割成block后,这些block会以合理的方式进行编码与分配。最后保存在I/O节点服务器中。,4.2GPU缓冲池预装载策略,缓冲池的预装载策略是为了提前将需要的地形block从外存设备中调入可视化系统的内存,从而保证实时仿真的流畅性。,我们在GPU中建立了一个4X4block大小的缓冲池。将视野里的地形高程数据转化成GPU缓冲池里的纹理图。,当试点平移时,需要更新的只有黄色的L型区域。蓝色区域不变,虚线部分被移出缓冲池。,当试点上升时,需要将原来16个block合并成4个block(蓝色区域),然后更新黄色的L型区域。,当试点下降时,只需要将原来中间的4个block分裂成16个block(蓝色区域。,4.3动态地形管理设计,以前大多数的海量地形管理策略都局限于静态地形。在静态地形中由于地形数据不会被实时地修改,外存中的地形数据是只读的。而在动态地形中我们不但要对外存数据进行读操作,而且还要进行写操作用以保存地形的变化量。否则随着block移出内存,地形变化量也随之丢失。当再次调入同一个block时,我们将无法恢复原来的弹坑或者车痕。以前的方法往往是把改变后的地形block整个保存在外存中,但这样会产生两个问题:1)将block传输到外存会占用大量的网络带宽,增加调度策略的复杂度,甚至严重影响系统实时效率;2)为了不覆盖初始数据,修改后的页面将会占用额外的外存空间,这就使得海量地形变得更加庞杂,从而大大增加了管理与组织的难度。,我们结合前文中的地形形变策略,提出了一个基于GPU的动态地形管理方法。对于弹坑的仿真,我们为每一个block设置一个元数据Oxy,它记录了弹坑中心点坐标。在调入一个block后,我们可以利用Oxy以及弹坑偏移量纹理图在GPU中快速的恢复弹坑地形。,对于车痕的仿真,我们首先将车痕纹理图简化为中轴线纹理图。这样我们记录的实际上是一系列的点状坐标数据,它的数据量非常小。然后我们将每一个block的中轴线纹理图传输到外存中保存,并且设置一个元数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年学历类自考专业(建筑工程)建筑结构试验-结构力学(一)参考题库含答案解析(5套)
- 2026届宁夏银川市宁夏大学附中高二化学第一学期期末检测试题含答案
- 新能源汽车电池包结构创新与空间利用率提升:2025年产业创新与市场应用报告
- 2025年学历类自考专业(建筑工程)工程地质及土力学-流体力学参考题库含答案解析(5套)
- 朝阳公寓建筑方案设计方案(3篇)
- 2025年学历类自考专业(小学教育)现代教育技术-课程与教学论参考题库含答案解析(5套)
- 2025年学历类自考专业(小学教育)小学数学教学论-中外教育简史参考题库含答案解析(5套)
- 2025年学历类自考专业(学前教育)学前教育行政与管理-学前教育研究方法参考题库含答案解析(5套)
- 广西贵港市覃塘高中2026届化学高三上期中经典模拟试题含解析
- 2025年学历类自考专业(学前教育)学前教育政策与法规-学前卫生学参考题库含答案解析(5套)
- GB/T 20671.1-2006非金属垫片材料分类体系及试验方法第1部分:非金属垫片材料分类体系
- GB/T 17449-1998包装玻璃容器螺纹瓶口尺寸
- 熵权法教学讲解课件
- PMC知识培训课件
- 医师病理知识定期考核试题与答案
- 高中数学教材分析讲座课件第五章-三角函数
- 会计师事务所验资工作底稿模板
- 婚育情况登记表
- 安宁疗护服务流程
- 久日新材料(东营)有限公司 年产87000吨光固化系列材料建设项目环评公示版
- 热分析DSC培训new
评论
0/150
提交评论