论文部分内容阅读
大规模地形场景实时绘制技术在地理信息系统、虚拟战场以及三维游戏中有非常重要的应用,一直是国内外研究的热点。在GPU出现之前,大规模地形绘制的研究主要集中在对地形的裁减和简化上,主要利用CPU进行处理,地形场景的规模大小和显示效果成为研究的瓶颈,随着大规模地形实时绘制技术在现实生活中应用要求的增加,基于CPU的简化算法已经不能满足当前的要求,高速可并行GPU的出现,给大规模地形实时绘制研究领域增加了生机。基于GPU的大规模地形实时绘制技术,充分利用GPU的计算能力,把图形流水线的大部分计算转移到GPU上,结合前人的层次细节模型LOD简化算法,设计实时性更好,绘制速度不受地形规模的影响,绘制效果更好的地形实时绘制算法成为当前研究的目标。
在大规模地形实时绘制技术方面,要提高绘制速度,摆脱绘制地形规模受当前内存大小和CPU计算速度的影响,需要在整个数据处理和绘制流程上做相应的改进:第一,要采用合理的数据存储方式和压缩方法,保证网络传输的及时性。第二,采用合理的缓存机制和预取策略,对数据进行预取和缓存,保证绘制的实时性。第三,在绘制阶段,尽量把大量计算交给GPU来处理,解放CPU的计算压力,充分利用高速GPU的性能,达到实时绘制的目的。
针对上述问题,本论文阐述了大规模地形实时绘制系统的设计方案:为了摆脱地形规模受制于内存大小和CPU计算能力的问题,本系统采用先把地形分块,再进行小波变换和SPIHT编码,然后进行存储的方式,这样经过处理后的数据能达到很好的压缩效果,有利于在网络上采用流式传输,降低数据对网络的压力,保证数据高速传输到本地;为了降低数据对网络的依赖,本系统采用二级缓存机制和数据预取策略,在客户端内存和显卡显存,分别设置缓冲区,采用合理的数据预取策略,保证在适当的时候开始预取数据,保证在需要更新数据时,需要的数据在本地内存,增加实时性;在绘制流程上,本系统采用适合于GPU处理的方式在GPU上构造多分辨率地形,并把小波逆变换,法线动态计算,T裂缝的消除等占用大量计算的处理过程,都转移到GPU上进行,减轻了CPU的压力,尽量做到CPU和GPU的负载均衡,保证大规模地形实时绘制的效率和效果。