一种渲染过程中海量三维地理信息数据处理方法技术

技术编号:8533847 阅读:213 留言:0更新日期:2013-04-04 17:37
本发明专利技术涉及一种渲染过程中海量三维地理信息数据处理方法,该方法包括数据加载和数据卸载,所述的数据加载包括:遍历场景块,判断当前场景块的可见性;遍历场景块中的场景节点,判断场景节点的可见性;将场景节点对应的资源数据加载到内存中,并将该场景节点插入渲染队列:所述的数据卸载包括:判断加载的资源数据大小是否小于内存的容量限制值;根据资源数据中资源项的访问时间和资源项索引构造资源优先级队列;按访问时间对资源优先级队列进行排序;判断资源优先级队列中是否有未遍历的资源项;从内存中卸载访问时间最早的资源项,直至加载的资源数据大小小于内存容量限制值。与现有技术相比,本发明专利技术具有提高渲染效率、减少内存耗用等优点。

【技术实现步骤摘要】

本专利技术涉及一种计算机数据处理方法,尤其是涉及ー种渲染过程中海量三维地理信息数据处理方法
技术介绍
在数字城市应用中存在海量的三维地理信息数据,这些数据主要包括DEM (Digital Elevation Model,数字高程模型)、DOM (Digital Orthophoto Map,数字正射影像图)和三维模型数据。对于由海量数据形成的大規模复杂场景而言,数据的合理调度一直是需要重点克服的难点,这是因为目前的计算机内存容量不可能提供足够的空间来把所有的场景数据都加载到系统中去,所以必须找到ー套策略把系统当前需要渲染的数据 及时加载进来,把不需要的数据及时从内存中卸载掉,这些都涉及到内存的调度机制,ー个高效的I/O系统对整个渲染的影响是至关重要的,这也是解决海量数据的ー个最重要的策略。目前,国内外学者的研究主要从数据、数据组织、可视性等方面着手,相应的出现了模型简化、分块组织、LOD (Levels of Detail,多细节层次)和可见性计算等技术。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种提高渲染效率、減少内存耗用的渲染过程中海量三维地理信息数据处理方法。本专利技术的目的可以通过以下技术方案来实现,该方法包括数据加载和数据卸载,所述的数据加载包括以下步骤I)判断渲染过程是否有未遍历的场景块,若是,则执行步骤2),若否,则结束加载2)遍历场景块,判断当前场景块是否可见,若是,执行步骤3),若否,则返回步骤I);3)遍历场景块中的场景节点,判断场景节点是否可见,若是,执行步骤4),若否,则返回步骤3);4)将场景节点对应的资源数据加载到内存中,并将该场景节点插入渲染队列,返回步骤I);所述的数据卸载包括以下步骤11)判断加载的资源数据大小是否小于内存的容量限制值,若是,则结束卸载,若否,则执行步骤12);12)根据资源数据中资源项的访问时间和资源项索引构造资源优先级队列;13)按访问时间对资源优先级队列的各资源项进行排序;14)判断资源优先级队列中是否有未遍历的资源项,若是,则执行步骤15),若否,则结束卸载;15)从内存中卸载访问时间最早的资源项,判断加载的资源数据大小是否小于内存容量限制值,若是,则结束卸载,若否,则返回步骤14)。所述的判断场景块和场景节点是否可见是根据相机的可视域判断的。所述的场景节点对应的资源数据包括场景节点的模型文件和纹理贴图。与现有技术比,本专利技术具有调度效率高、耗用内存小等特点,由于采用了场景分块和LRU调度算法,可以在比较低配置的机器上运行起任意大規模场景。附图说明图1为本专利技术数据加载的流程示意图;图2为本专利技术数据卸载的流程示意图。具体实施例方式下面结合附图和具体实施例对本专利技术进行详细说明。实施例,该方法事先对整个场景数据按一定空间大小进行分块;然后遍历所有的块,根据相机的可视域将可见块中的节点模型及纹理资源加载进内存;然后在渲染的时候更新模型及纹理资源的访问时间;然后在资源达到内存限制时,根据资源的访问时间卸载掉访问时间最早的资源;在渲染的过程中,根据块的可见性对资源进行加载,根据资源的访问时间对资源进行卸载,以实现资源的调度,提高渲染效率、减少内存耗用。本方法包括数据加载和数据卸载两部分。图1为本实施例方法中数据加载的具体流程在步骤401中,判断渲染过程中是否有未遍历的场景块,如果有,执行步骤402 ;如果没有,遍历结束;在步骤402中,遍历场景块,根据相机的可视域判断场景块的可见性,如果可见,执行步骤403 ;如果不可见,执行步骤401 ;在步骤403中,遍历场景块中的场景节点,根据相机的可视域判断节点的可见性,如果可见,执ィ了步骤404 ;如果不可见,执ィ了步骤403 ;在步骤404中,将场景节点对应的模型文件及纹理贴图资源加载到内存中,并将节点插入渲染队列,执行步骤401。图2为本实施例方法中数据卸载的具体流程在步骤411中,判断加载的资源大小是否小于内存的容量限制值,如果是,则结束卸载;如果不是,执行步骤412;在步骤412中,以资源队列中资源项的访问时间和资源项索引构造资源优先级队列;在步骤413中,按访问时间对资源优先级队列的项进行排序;在步骤414中,判断资源优先级队列中是否还有未遍历的项,如果是,执行步骤415 ;如果不是,则结束卸载;在步骤415中,从内存中卸载访问时间最早的资源项;在步骤416中,判断加载的资源大小是否已经小于内存容量限制值,如果是,返回;如果不是,执ィ丁步骤414。本文档来自技高网...

【技术保护点】
一种渲染过程中海量三维地理信息数据处理方法,其特征在于,该方法包括数据加载和数据卸载,所述的数据加载包括以下步骤:1)判断渲染过程是否有未遍历的场景块,若是,则执行步骤2),若否,则结束加载;2)遍历场景块,判断当前场景块是否可见,若是,执行步骤3),若否,则返回步骤1);3)遍历场景块中的场景节点,判断场景节点是否可见,若是,执行步骤4),若否,则返回步骤3);4)将场景节点对应的资源数据加载到内存中,并将该场景节点插入渲染队列,返回步骤1);所述的数据卸载包括以下步骤:11)判断加载的资源数据大小是否小于内存的容量限制值,若是,则结束卸载,若否,则执行步骤12);12)根据资源数据中资源项的访问时间和资源项索引构造资源优先级队列;13)按访问时间对资源优先级队列的各资源项进行排序;14)判断资源优先级队列中是否有未遍历的资源项,若是,则执行步骤15),若否,则结束卸载;15)从内存中卸载访问时间最早的资源项,判断加载的资源数据大小是否小于内存容量限制值,若是,则结束卸载,若否,则返回步骤14)。

【技术特征摘要】
1.一种渲染过程中海量三维地理信息数据处理方法,其特征在于,该方法包括数据加载和数据卸载,所述的数据加载包括以下步骤 1)判断渲染过程是否有未遍历的场景块,若是,则执行步骤2),若否,则结束加载; 2)遍历场景块,判断当前场景块是否可见,若是,执行步骤3),若否,则返回步骤I); 3)遍历场景块中的场景节点,判断场景节点是否可见,若是,执行步骤4),若否,则返回步骤3); 4)将场景节点对应的资源数据加载到内存中,并将该场景节点插入渲染队列,返回步骤I); 所述的数据卸载包括以下步骤 11)判断加载的资源数据大小是否小于内存的容量限制值,若是,则结束卸载,若否,则执行步骤12); 12)根据资源...

【专利技术属性】
技术研发人员:贺志武刘碧珊王美华
申请(专利权)人:上海创图网络科技发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1