论文部分内容阅读
大规模场景可视化在计算机辅助设计、模拟训练、沉浸式场景漫游等领域是一个关键性问题。如何利用集群将大规模场景实时绘制从单机扩展到多机,使用并行绘制进行高分辨率、大面积显示是本文的研究重点。本文针对大规模静态场景和大规模动态场景这两种不同的需求提出了两种不同的系统体系结构,并且给出了两种不同的实现:VMPDRender和TyrMMR。首先,本文对基于集群的并行绘制系统作了一个总体介绍,主要是集群的硬件系统,包括集群的硬件构成和整个大屏幕拼接系统的组成。然后介绍了常用的交互工具以及怎样在大规模场景的漫游和交互中发挥作用。VMPDRender使用了master-slave的体系结构。在slave节点上保留了大规模场景绘制系统的所有功能,master节点仅负责同步所有的绘制节点。怎样进行协同工作是VMPDRender实现时的关键问题。本文通过研究并行绘制中常用的栅栏同步技术,并提出了改进的方法来解决大规模场景并行绘制中的同步问题,并提出了同步协议来满足一般并行绘制中的同步问题。最后验证了VMPDRender节点数增加时,性能损失并不明显,并且具有和单机版相近的绘制效率。TyrMMR的体系结构是基于Client-server模式的变形。主要的功能都集中到了Client节点,server节点只负责本地的绘制以及绘制数据的管理。Client节点在每一帧判断当前的绘制集,并渐进地将绘制数据发送到相应的server节点。这种实现有效地支持了在线简化功能,从而满足了动态场景的绘制需求(如虚拟装配功能)。本文就TyrMMR中几个主要子模块的实现进行了详细地分析,包括绘制数据的序列化、适合于图形数据传输的网络传输模块和Cache子系统。最后给出了系统的运行结果,验证了TyrMMR能对大规模场景中的物体进行实时编辑,并且通过对系统性能的测试,发现当TyrMMR从单机扩展到网络版本时有性能损失,但随着绘制节点数目的增加,性能损失并不明显,因此具有良好的扩展性。