论文部分内容阅读
在地形三维场景的绘制过程中,传统的技术方案主要集中在图形硬件端的优化,即通过显示列表、顶点缓存对象等对客户端发送到显卡服务器的地形数据进行封包显示,严重的占用了存储资源,不能从根本上提高地形的显示效率。针对上述问题,本文在地形数据的组织管理方面,采用K-D树进行场景树的管理,最大化的利用了底层空间组织,同时处理了在不同条件下使用不同精度的地形数据的问题。在K-D树的基础上,采用可见性剔除方法,有效的进行了视域裁切与剔除工作,实现了复杂度的简化。改进了传统的加载算法和调度策略,采用三个层次的管理,由低分辨率的替代物(第三级)到高分辨率的替代物(第二级)到几何绘制(第一级)逐层显示,这样可以高效的进行可见性判定来得到可见场景区域,同时控制影响较小的数据的载入,可以极大的提高数据调度系统的性能。此外,本文引入了纹理映射的方法与概念,纹理模型可以采用多分辨率的思想来进行管理和组织,当绘制海量地形数据时,采用四叉树和金字塔管理纹理数据具有相当大的优势。在此基础上,提出了一种适合面向对象思想的分层分块方法,解决了传统方案中存在的索引速度慢,可扩展性能差的主要缺点。在上述关键技术研究的基础上,详细的介绍了所实现的原型系统的体系架构与空间数据层次的设计,以地面寻径的典型应用为案例,在Visual C++开发环境下,利用OpenGL图形接口,采用文件系统,实现了一个海量地形数据的三维可视化的原型系统,并对多个地形数据与地上模型的场景进行了实验。实验结果表明系统显示效率高,效果好,证明了本文的研究思路与技术路线是可行的,较好的解决了大规模地形三维可视化的问题。