论文部分内容阅读
近年来,随着计算机图形学的飞速发展,以其为理论基础的渲染技术得到了广泛的应用。然而,对于大规模场景而言,由于其模型对象具有规模大、精度高等特征,受到硬件条件的限制,很难在单机上实现交互级场景渲染。作为应用于工程设计、建造的BIM(Building Information Modeling)数据化场景中,包含多个建筑物模型、钢架结构模型、管线模型等,每个模型都具有复杂且精细的几何信息,几何数据规模普遍偏大,对这类场景进行实时渲染是一个极具挑战的问题。针对问题,本文对大规模场景的实时渲染问题开展研究,尤其针对BIM场景大幅度提高了渲染效率,实现了交互级渲染效果。具体工作如下:(1)基于Master-Slave结构实现了一个基于OpenGL的分布式三维模型渲染框架。针对BIM场景的特殊性,提出一种基于场景内容分布的交互式任务调度策略。该策略通过将BIM模型在内容上按个体划分为单一渲染节点可渲染的子场景,使场景任务平均分配至渲染节点,避免产生负载不均衡问题。主端与从端通过TCP/IP协议来实现分布式渲染的网络连接,当用户交互操作时,这些子场景被调度到渲染节点上进行处理。子场景的渲染结果以及对应的深度图像发送至主端,并根据场景深度信息进行合成来得到最终渲染结果。在整个过程中,主端产生的交互动作通过网络消息通知从端的渲染节点进行处理,更新渲染结果。(2)以此面向BIM的分布式渲染框架为基础,对渲染节点所得到的渲染中间图像的传输过程和最终渲染图像的合成过程进行了优化改进。在从渲染节点所得到的渲染中间结果以及对应的深度图像需要传输给主端进行拼接合成,为提高传输速率节省网络带宽,采用Snappy压缩算法对相关图像数据进行压缩传输,降低了传输响应时间。在主端最终渲染图像的合成过程中,根据深度信息对来自各从端的颜色图像数据进行合成并得到最终的渲染结果,这样既保留了图像数据传输的效率,也确保了最终渲染的精度。(3)将本文所提出的面向BIM的分布式渲染系统与单机渲染进行性能对比,可以得出采用分布式渲染系统进行大规模BIM场景绘制,不仅减少了场景加载时间和渲染时间,同时能够降低系统交互延时,使得整个分布式渲染系统交互响应所需时间远远小于单机渲染时间,极大的提高了渲染效率。并对系统的交互性能进行了测试,实验表明本文所提出的分布式渲染系统能够在主端进行流畅的交互操作。