一种基于地理信息的三维渲染引擎系统的制作方法

文档序号:9922501阅读:581来源:国知局
一种基于地理信息的三维渲染引擎系统的制作方法
【技术领域】
[0001]本发明涉及地理信息技术领域,特别涉及一种基于地理信息数据的管理,空间数据组织、检索与分析,三维实体对象的组织与管理,海量数据的高效调度和模型、纹理共享,将地理信息数据进行三维仿真形式应用的一种基于地理信息的三维渲染引擎系统。
【背景技术】
[0002]地理信息系统(GeographicInformat1n System或 Geo — Informat1n system,GIS)有时又称为“地学信息系统”或“资源与环境信息系统”。它是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。而这种技术可以应用在房地产领域中的建筑漫游,如房地产漫游,小区浏览,楼盘漫游,三维虚拟样板房等房地产虚拟现实三维展示;在规划领域中可以应用在市政规划,城市规划,城市形象展示,数字化城市,城市数字化工程,园区规划,场馆建设等;在园林领域可以用于园林场景的景区宣传,旅游景点开发,地形地貌表现,国家公园,森林公园,自然文化遗产保护,历史文化遗产记录,园区景观规划,场馆绿化,小区绿化,楼盘景观展示等。
[0003]从以上的实际应用案例可以看到,GIS技术的应用领域非常广泛,不论在专业领域还是面向大众服务领域,都有很好的应用前景。但是,不论在哪方面的应用,都离不开地理信息数据的展示。相比之前以图表或二维几何图形的方式进行展示,基于三维虚拟现实技术将地理信息数据进行更直观、真实地进行表达,无疑会起到更积极的作用,也是地理信息技术发展的必然趋势。
[0004]众所周知,地理信息数据是海量的、无序的。要想将地理信息数据以三维的形式进行表达,我们必须构建一个性能强劲的基于地理信息的三维渲染引擎系统,交互式地将地理信息数据呈现给用户。它能够提供高效的显示大型场景的能力,能够最小化处理过程,让GPU花费的时间和内存最小,同时还要在有限的时间范围内满足我们对图形质量的要求。
[0005]为了达到这些目的,渲染引擎通常具备平截头体裁剪、遮挡查询、LOD选择、分页调度等技术。除了这些常用的技术外,一个基于地理信息的三维渲染引擎系统要解决的核心问题是如何将地理信息的属性数据、二维数据和三维数据进行一体化管理。
[0006]目前,还没有一个完善的系统可以同时解决基于地理信息数据的二、三维数据一体化管理,空间数据检索与分析,三维场景的组织与管理,海量数据的调度和模型纹理共享等技术问题;同时,可以在渲染过程中提升渲染效率,使地理信息数据能够进行多平台数据共享;为不同行业的深度应用提供了一个可靠的基础平台。

【发明内容】

[0007]为了解决现有技术中存在的技术难题,高效流畅地展示三维地理信息数据并在诸多领域中进行具有实际意义的三维空间分析与应用。
[0008]本发明实施例提供一种基于地理信息的三维渲染引擎系统,该系统是由渲染实体管理模块、渲染驱动模块、渲染操作抽象模块和渲染操作模块构成;其中:
所述渲染实体管理模块用于对场景中的实体对象及其渲染符号、渲染方式进行管理,对海量数据进行调度管理,对三维地形数据进行动态构建、调整,对粒子系统进行效果管理,管理、更新场景中的动态对象,对三维场景进行空间分析,对场景动画进行巡航、录制;所述渲染驱动模块用于三维场景组织、管理,场景裁剪过滤,场景碰撞检测,对各种渲染状态进行管理、分类,控制、传递消息循环,提供基础的渲染对象,管理硬件资源,提供计时服务;
所述渲染操作抽象模块:抽象了图形接口渲染所需的渲染数据、渲染状态、渲染操作;所述渲染操作模块:针对不同的图形接口进行不同的操作,将处理后的渲染数据传输至图形接口系统中进行显示。
[0009]一种基于地理信息的三维渲染引擎系统,所述渲染实体管理模块是由数据调度子模块、实体对象管理子模块、渲染对象管理子模块、特效管理子模块构成,其中:
所述数据调度子模块用于:与外界的资源调配系统连接,利用调度节点判断该节点是否需要调度数据,如果需要根据数据的来源进行数据调度,如果不需要则放弃;在数据调度过程中有效的控制内存池使用量,只加载在相机可视范围内的数据,及时卸载相机可视范围以外的数据;
所述实体对象管理子模块:将地理信息数据抽象为实体对象模型,为用户提供了实体操作的接口,使用户管理场景中的实体对象;设置实体对象的属性;管理渲染对象在场景中的生命周期;
所述渲染对象管理子模块:负责将几何图形转换为图形接口可使用的数据格式;将显示风格转换为图形接口可使用的渲染状态;将图像转换为图形接口可使用的纹理数据;所述特效管理子模块:用于管理三维场景中的声音特效和视觉特效。
[0010]一种基于地理信息的三维渲染引擎系统,所述渲染驱动模块是由场景管理子模块、渲染单元管理子模块、渲染状态管理子模块、碰撞检测子模块、消息控制子模块和硬件资源管理子模块构成,其中:
所述场景管理子模块:将实体对象管理的渲染对象应用到场景中;管理场景中的渲染对象,用于场景的裁剪、碰撞分析、显示操作;
所述渲染单元管理子模块:管理了经过裁剪后,最终要显示的所有渲染对象的渲染单
J Li ο
[0011]所述渲染状态管理子模块:将经过裁剪后需要显示的渲染单元的渲染状态进行分类排序,减少图形接口对渲染状态的切换频率,以提升系统的渲染性能;
所述碰撞检测子模块:采用碰撞检测方法判断实体对象与实体对象之间的拓扑关系,其中所述的碰撞检测方法可为BSP树及包围盒碰撞检测方法、BVTree及包围盒碰撞检测方法、Grid及包围盒碰撞检测方法;
所述消息控制子模块:将用户输入的消息和系统产生的消息进行过滤和传递;控制消息传递的深度;转换消息传递的类型;
所述硬件资源管理子模块:通过管理硬件中显卡内存的创建、更新、删除,控制显卡内存的使用率。
[0012]一种基于地理信息的三维渲染引擎系统,所述渲染操作抽象模块是由硬件资源抽象子模块、渲染资源抽象子模块、渲染操作抽象模块、着色器抽象子模块和插件管理子模块构成,其中:
所述硬件资源抽象子模块:对硬件资源对象及其使用方法进行抽象处理;
所述渲染资源抽象子模块:对渲染资源对象及其使用方法进行抽象处理;
所述渲染操作抽象模块:对渲染资源的使用方法进行抽象处理;
所述着色器抽象子模块:对顶点着色器和片段着色器及其使用方法进行抽象处理; 所述插件管理子模块:负责加载并管理渲染操作模块的各个子模块。
[0013]一种基于地理信息的三维渲染引擎系统,所述内存池的空间使用量是根据硬件内存容量的大小而自动设置,其内存池容量在硬件内存值的占有率为35%-90% ;所述管理实体对象的属性可为几何形状、显示风格、图像;所述管理的对象可为地形对象,静态实体对象,动态实体对象;
一种基于地理信息的三维渲染引擎系统,所述显卡内存的使用率范围在35%-90%。
[0014]一种基于地理信息的三维渲染引擎系统,所述渲染操作模块可以
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1