计算机应用 ›› 2010, Vol. 30 ›› Issue (07): 1832-1834.

• 图形图像处理 • 上一篇    下一篇

基于纹理数组的大规模地形绘制算法

王冬1,张豫南2,林成地2,刘涛2   

  1. 1. 装甲兵工程学院控制系电气室
    2.
  • 收稿日期:2010-01-14 修回日期:2010-03-06 发布日期:2010-07-01 出版日期:2010-07-01
  • 通讯作者: 王冬
  • 基金资助:
    兵器装备预先研究

Rendering method for large-area terrain based on texture array

  • Received:2010-01-14 Revised:2010-03-06 Online:2010-07-01 Published:2010-07-01

摘要: 将Shader Model 4.0引入的纹理数组技术同顶点纹理拾取技术、瓦片块四叉树算法和地形分块技术等相结合,提出了一种基于GPU的大规模地形绘制方法。将整个大规模地形数据分割成地形块,按照金字塔模型保存在CPU内存里,将地形中潜在的可见部分以纹理数组形式驻留在GPU Cache里;在CPU上发送瓦片块四叉树平面网格,利用存储在GPU Cache里的高程值生成相应的地形;GPU Cache随着视点运动而连续更新。实验证明该方法充分利用了现代GPU的特性,适合于大规模地形的漫游。

关键词: 地形可视化, 瓦片块四叉树, 纹理数组, 图形处理单元

Abstract: A real-time rendering method for largearea terrain data was presented utilizing the techniques such as texture array, vertex texture fetching, tiled quad tree grid and terrain data block partition. The whole terrain model was partitioned into equal size blocks and the blocks were stored in CPU memory in tilepyramid model. The potentially visible portion of the terrain was cached at the highest necessary resolution in form of texture arrays and was rendered from the GPU. The CPU sent tiled quad tree flat grid, which was displaced by fetching the heights stored in the GPU cache. The GPU cache was updated continuously as the viewpoint changed. The experimental results show that the method is very efficient and suitable for applications of massive terrain rendering and interactive walkthrough.

Key words: terrain visualization, tiled quad tree, texture array, graphic processing unit