[发明专利]面向GPU的大规模地形快速绘制方法无效
申请号: | 201210316717.8 | 申请日: | 2012-08-31 |
公开(公告)号: | CN102867331A | 公开(公告)日: | 2013-01-09 |
发明(设计)人: | 程建;屈航;罗博;曾杰 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06T17/05 | 分类号: | G06T17/05;G06T15/00 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
地址: | 610000 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 gpu 大规模 地形 快速 绘制 方法 | ||
1.一种面向GPU的大规模地形快速绘制方法,其特征在于包括以下步骤:
S1、生成原始地形的外存文件;其中,所述外存文件中存储有包含原始地形数据的多个地形块、每个所述地形块的索引编号以及与所述地形块相对应的压缩纹理块,所述地形数据包括纹理数据和高程数据;
S2、根据预设视点参数确定地形的LOD层次分布,建立地形四叉树结构,遍历所述地形四叉树结构为不同的LOD层次细节选择相应的四叉树节点,将选中的四叉树节点添加到渲染调度队列;其中,所述地形四叉树结构的各个节点对应于所述外存文件中的相应压缩地形块,用于存储相应压缩地形块的LOD层次及高程数据;
S3、从所述渲染调度队列获取将被调度的节点,并对所述将被高度的节点进行渲染,完成对原始地形的绘制。
2.根据权利要求1所述的面向GPU的大规模地形快速绘制方法,其特征在于所述S1包括以下步骤:
获取原始地形的高程数据和纹理数据,并将所述原始地形的高程数据和纹理数据进行分层分块处理,得到多个大小相同的地形块及与所述地形块相对应的纹理块;
对所述纹理块进行压缩,得到压缩纹理块,并为所述地形块构建相应的索引编号;
将所有所述地形块及与每个地形块相应的索引编号、压缩纹理块存储于一文件中,得到外存文件。
3.根据权利要求1或2所述的面向GPU的大规模地形快速绘制方法,其特征在于所述S3中对所述将被调度的节点进行渲染,完成对原始地形的绘制的步骤包括以下步骤:
根据所述将被调度的节点获取相应地形块的地形数据;
将所述地形块的高程数据作为顶点纹理载入显存,由固定的顶点缓存和索引缓存建立地形的平面网格模型;
利用顶点着色器的顶点纹理拾取功能获取地形网格的高程值,设置消除裂缝、跳跃现象的过渡带,并进行顶点变换和片元处理,最终实现绘制。
4.根据权利要求2所述的面向GPU的大规模地形快速绘制方法,其特征在于所述S1采用的分层方法为:采用隔行隔列法对所述原始地形的高程数据进行重采样、采用双线性插值法对所述原始地形的纹理数据进行重采样。
5.根据权利要求2或4所述的面向GPU的大规模地形快速绘制方法,其特征在于:所述S1压缩所述初始地形块的纹理数据时采用的压缩算法为采用DXT算法。
6.根据权利要求1所述的面向GPU的大规模地形快速绘制方法,其特征在于在所述S2的LOD层次分布中:当视距增加一倍时,LOD级别降低一级。
7.根据权利要求1所述的面向GPU的大规模地形快速绘制方法,其特征在于所述S2在遍历所述地形四叉树结构为不同的LOD层次细节选择相应的四叉树节点的同时还执行下述步骤:对所述地形四叉树结构进行视锥体裁剪。
8.根据权利要求7所述的面向GPU的大规模地形快速绘制方法,其特征在于所述对所述地形四叉树结构进行视锥体裁剪具体为:对当前四叉树节点的包围盒与视锥体进行相交测试,完成快速视锥体裁剪。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210316717.8/1.html,转载请声明来源钻瓜专利网。