依据三维视景的仿真体系结构了一个可视化的列车运转环境,可以全程模仿列车的实在运转状况,为运用者供给了实在体会和便利天然的人机交互,多套仿真体系联网可认为列车运转距离、阻塞制式、进路操控以及列车运转图的规划等多方面的研讨供给强有力的验证手法,为我国自主开发CTCS树立技能创新渠道有重大意义。
三维视景的构建与驱动,比较根本的办法是选用OpenGL完成[1],其缺陷是不能运用高效的建模东西制造的三维模型,所以三维场景传神度以及场景的巨细都受到很大的约束。而MultiGen公司的软件Creator和Vega供给了完好的、老练的模型制造、加载以及视景驱动功用,所以许多研讨者都是用这种办法树立三维视景体系[2,3].可是Creator和Vega是商业软件,因而要承当较高的研讨和开发本钱。与其它建模软件,如3 D SMAX(以下简称MAX)比较,Creator树立的模型通用性很弱,只能在MultiGen公司的渠道下运用,并且用Creator建模,在模型精密程度、灯光作用等方面也相差较远[4].一起Vega封装较严厉,因而在软件开发自由度以及二次开发上都面对不少的约束。
OGRE(Objected-Oriented GraphicsRendering Engine)是一个用C++开发的面向场景、十分灵敏的3D引擎,它旨在让开发人员更简单、更直接的运用硬件加速的3D图形体系开发运用。因而,本文运用依据OGRE的3D引擎,选用MAX建模,结构了郑州-西安高速铁路道路传神的三维视景体系。
1.大规模地景的加载与显现
郑西高速铁道路的三维视景体系的地舆规模是从郑州到西安的长约五百公里的高速铁道路,对视景仿真来说,这触及到大地景的加载与显现技能。
列车驾驶员角度尽管只能沿着铁道路移动,可是角度却一向靠近地面上的景象,因而悉数铁路沿线的模型都需求十分精密。这提出了三个问题:
铁路沿线模型建模需求十分精密;精密的模型需求占用较大内存,因而需求体系可以动态加载模型;为了削减内存占用,需求运用大型网格多分辨率技能。
第一个问题第二节具体评论。
多分辨率技能以网格简化为根底,经过结构原始网格模型的多个迫临表明,结合硬件资源的制造才干和制造差错挑选最优的细节层次(level-of-detail,LOD)进行制造,并在确保制造速度的前提下尽可能进步制造质量。其触及内容首要包含:1)多分辨率表明的规划,如LOD的安排和切换;2)多分辨率表明的构建,如依照层次结构自底向上生成一切LOD;3)多分辨率表明的制造,如依据硬件制造才干、光照参数和观测参数挑选、加载和制造LOD.
关于地势可视化技能而言,三维地势数字高程数据(DEM)的合理有用的安排是后续地势简化的根底。跟着地势场景规模的不断扩大,仿真所用地势数据量不断激增,这些海量数据已远远超过了核算机的实时处理才干,使得地势数据无法一次性调入内存。为了完成大规模场景的实时制造,需求对数据的安排结构进行处理,还要对数据的调度进程进行高功率的办理。因而,怎么高效、实时的处理、调度数据,一起确保画面帧速率的稳定性成为了亟待处理的关键问题。
在数据安排方面,地势三维可视化场景数据一般选用树形结构,运用树形结构来安排数据;在数据存储方面,因为海量数据不能一次性读入内存,故需求对数据在外存形式下的拜访频率尽可能低,然后尽可能进步CPU运转功率。海量数据的拜访形式应该满意:在同一区域数据的存储具有很好的连续性;依照不同的LOD逐层拜访,同层或相邻层的数据应具有杰出的局部性;在数据动态调度方面,为处理海量数据与核算机内存容量之间的对立,现在遍及选用的数据调度办法都是依据外存算法进行优化和改善。
运用多线程和依据外存的办法来进行可见性核算与数据操作,运用依据角度的可见性判别作为数据预读取战略,动态加载数据,体系内存缓冲区存储新近运用的几许数据。
2.3DS MAX精密建模
关于一般的三维视景建模来说,MAX与Creator都能到达所需求的构建精度要求,但在构建传神度方面Creator的体现不及MAX.关于高精度模型的构建,Creator除了制造军事场景和一些杂乱人物模型之外,在其他方面很少会用到,关于制造具有高油滑度的细节部分,Creator制造起来也不如MAX的质量高。而MAX在这个方面运用得十分老练,运用MAX更为盛行。它供给很好的东西,比如说蒙皮、骨骼等,动画人物的动作、表情等的细腻表达,经过MAX可以展示得十分传神。
多重纹路技能是可以增强模型烘托传神度的一个技能。三维图形是由称作立体多边形的面组合构成的,但为了再现立体外表的把戏和质地的感觉,有时在多边形中张贴称为纹路的图画。叠合了多个纹路图画,一次性地堆叠多个纹路,一起进行绘画的办法便是多重纹路。
一次性多重贴图混合是显卡等硬件对应才干够运用的功用,因为可以堆叠多个纹路并一起绘画,所以其速度快,它可以将几回烘托合为一次来进行,在这个烘托进程中, 可以在不同的纹路单元别离放入第1次、第2次、第3次需求烘托的目标。当程序向屏幕绘图时,将这些烘托成果叠加起来,终究成果显现到屏幕。在硬件不对应的状况下,用软件进行屡次重复纹路绘画的多重贴图混合。
3.快速烘托小物体
关于视景仿真体系来说,传神度是十分重要的一环,因而,高度杂乱的场景就不行短少,树木和草掩盖在地面上可以起到很好的作用,这些树木和草一般被称作小物体(widget)。
实际上,用作widget的最有用的模型一般只运用少量几个双面多边形和单张的纹路。这种简单性使咱们可以烘托比其他办法多得多的实例。可是因为树和草的数量比较大,现在的硬件可以烘托很多的三角形,可是只有当烘托的单位是有上千个极点组成的块时才干得到最好的功能体现。这是因为很多的单个三角形从内存发送到显卡需求占用比较大的显存带宽,并且因为GPU的处理速度十分快,就会形成GPU在等候小物体的极点数据的景象呈现,严重影响显现功率。
一个高效的处理办法是,对场景中一切的小物体进行合理化分组,跟着角度的改变烘托不同分组的小物体。二叉空间区分法(Binary Space Partitioning,BSP)是一种十分有用的分组办法,使得场景可以对错规矩的形状,而不必花费额定的内存来存储空的节点。这种办法递归地将空间运用超平面区分为凸面体调集,引出了借助于称之为BSP树的树形数据结构的场景表明。二维(称为四元树,Quad Tree)和三维(k-d树)BSP树及其变体是核算机图形学中运用得十分重要的数据结构。开始,整个区域被界说为BSP树的根;之后,持续区分区域,一旦把凹形区域区分为两个凸形区域(在最好状况下)或凹多边形,命名这些区域,它们成为其父结点的子节点,父结点实际上代表了整个区域。
4.体系结构及仿真成果
OGRE是一个开源的三维引擎,这个类库躲藏了底层体系库OpenGL和Direct3D的一切细节,供给了一个依据国际目标和其它直观类的接口,极大的进步了开发功率。本体系选用了OGRE 1.7.3版别,开发渠道选用Microsoft Visual Studio 2010.硬件渠道选用的是Intel Xeon 2.5GHz CPU,3G RAM,WinFast GTX 460显现卡,操作体系选用Windows7 Professional.本体系是以郑州-西安高速客运专线为仿真目标构建的视景体系的显现作用,列车运转公里标、速度、进路信息以及信号机显现参数由高速列控试验室仿真渠道经过以太网传输。视景输出为1280*1024像素,帧速率不低于30fps.
5.结语
依据高速列车视景仿真不同于飞翔仿真的特色,体系需求可以很好的处理大规模地景的高传神度、高精度建模,供给有用的数据结构安排、存储地景及其纹路数据,当列车运转的时分,依据角度的改变,运用多线程技能高效的索引及加载多分辨率的地势和纹路以及树和草等小物体,处理好海量数据加载和画面流通度的对立,为高速列车运转操控体系试验室的视景体系的建造供给了有用地处理方案。
别的,体系在规划的时分把信号机和应答器的模型与数据分隔处理,轨迹道岔和进路可以独自操控,因而体系具有杰出的可移植性与扩展性,可以便利的把体系运用到其它高速列车线路,例如京沪、京哈等线路上,为多条线路、多种类型的高速列车独自乃至穿插运转试验供给杰出的试验环境。