[发明专利]一种基于GPU的渲染地形的方法有效
申请号: | 201110325143.6 | 申请日: | 2011-10-24 |
公开(公告)号: | CN102890829A | 公开(公告)日: | 2013-01-23 |
发明(设计)人: | 齐成涛 | 申请(专利权)人: | 克拉玛依红有软件有限责任公司 |
主分类号: | G06T17/05 | 分类号: | G06T17/05;G06T15/04 |
代理公司: | 北京市盛峰律师事务所 11337 | 代理人: | 赵建刚 |
地址: | 834000 新疆维*** | 国省代码: | 新疆;65 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu 渲染 地形 方法 | ||
技术领域
本发明涉及计算机图形学领域,特别是涉及一种基于GPU的GeometryClipmap渲染地形的方法。
背景技术
随着信息技术的快速发展,大规模复杂场景的实时漫游技术变得日趋重要。利用计算机技术,以三维可视化的形式将海量场景数据表现出来是一个发展的必然趋势,但相对于凌乱的文字数据,采用三维场景形式展示给用户的信息量非常巨大。传统大规模场景渲染算法的实现通常要在CPU上进行复杂的数据分块、复杂的数据结构维护以及复杂的精细层次筛选计算等操作,导致了计算负担比较重。而庞大的数据存取和庞大数据的渲染是导致计算负担较重的两个因素。
1)庞大的数据存取
无限大的场景模拟需要海量的场景数据。一个典型的大规模场景渲染实例就是室外地形的渲染,地形数据的大小又决定了场景的大小,因此如何保存这些地下数据成了首要的问题。由于数据量庞大,这些数据还不能全部存放在计算机内存中,为了降低渲染计算机硬件的要求,数据平时要放在硬盘中。因此,在算法上就需要一种预取和释放的策略,尽量减少系统内存性能的受影响程度。
2)庞大数据的渲染
当实时漫游大区域地形时,视野很多情况下都是无限的,而无限的视野就意味着要渲染无限的图元,对于现有的计算机资源是不可能实现的。图元数量是以场景大小平方的速度增长,只考虑地形数据,一个2048x2048地形图,如果不考虑减低细节程度和裁剪的话,它将要渲染8M的三角形,目前计算机配置很难实现交互式帧率。因此,减少要渲染地形的图元数目是该领域解决的核心问题,在质量误差范围内,一切工作都是为了减少渲染数据量。
为了解决海量数据存取和渲染的问题,常用的方法是将地形数据按照不同精细层次进行分块,在内存中维护一个复杂的数据结构(通常是kd树),然后当视点移动的时候,根据屏幕像素级别的误差要求,在这棵树中选取不同精细层次的数据,最后将不同精细层的地形块拼接在一起。这种传统的算法会造成CPU运算负荷过大,导致三维图像显示不连续。
总之,现有的进行渲染地形的方法存在渲染地形的过程中运算复杂,速度慢的缺陷。
因而,目前需要本领域技术人员迫切解决的一个技术问题就是:如何找到一种新型的快速的渲染地形的方法。
发明内容
本发明所要解决的一个技术问题是提供一种基于GPU的GeometryClipmap渲染地形的方法,该方法是一种快速的渲染地形的方法,得到的三维图像显示连续。
为了解决上述问题,本发明公开了一种基于GPU的GeometryClipmap渲染地形的方法,包括:
对高程纹理数据进行组织,逐级排列的不同分辨率的高程纹理数据;
根据顶点位置从相应层获取高程纹理组织数据的高程值,获得高程纹理组织数据的高程值;
对过渡带进行顶点高程数据的混合,获得多过渡带的高程混合数据;
在像素着色器中计算法向量及细节纹理,获得法向量及细节纹理;
将图像渲染到屏幕上,获得在屏幕上显示的图像渲染效果;
检测视点是否更新,作出相应的操作。
优选的,所述对高程纹理数据进行组织,逐级排列的不同分辨率的高程纹理数据的步骤,包括:
获取当前视点范围内的高程纹理数据,得到当前视点范围内的高程纹理数据;
获取不同分辨率的高程纹理数据,得到不同分辨率的高程纹理数据;
将不同分辨率的高程纹理数据按照Clipmap的方式进行排列,获得逐级排列的不同分辨率的高程纹理数据。
优选的,所述对高程纹理数据进行组织的步骤,包括:
对高程纹理数据的高度数据进行组织,获得合成后的高程纹理数据的高度数据;
对高程纹理数据的水平数据进行组织,获得高程纹理数据的水平数据;
对高程纹理数据的地形数据进行合并,获得高程纹理数据的地形数据。
优选的,所述对高程纹理数据的高度数据进行组织,获得合成后的高程纹理数据的高度数据的步骤,包括:
将高度纹理数据的高度数据进行创建,获得32位float精度的纹理高度数据;
将两层纹理高度数据保存到一张纹理内并传输给GPU;
将当前层的纹理高度数据保存为32位float精度的纹理高度数据的整数部分;
将相邻的下一层纹理高度数据保存为32位float精度的纹理高度数据的小数部分;
对两层纹理高度数据进行合成;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于克拉玛依红有软件有限责任公司,未经克拉玛依红有软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110325143.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种双灭火剂喷射枪及其方法
- 下一篇:高分辨率全组移动工业用摄像镜头