地形I
基本地形渲染技术 并过度到 场景管理 碰撞检测
第13章 基本地形渲染
一个地形mesh是真实的没有比三角形格子的,图13.1.a展示,但是在格子上使用每个顶点高度在从山脉到山谷的转换,模拟自然地形(图13.1b).这个过程,我们应用纹理展示沙滩,丘陵,和雪山。
三角形高度图
使用高度转换。(c)光照和纹理地形是屏幕从我们在这章创建的例子。
这章走进Terrain类的实现。这个类使用残忍的手段。意味着它简单的存储整个地形的顶点/索引数据和渲染它。适合游戏需要的小地形,它接近使用现代图形卡支持硬件顶点处理。然而,大的地形,你必须做些细节或者拣选因为巨大的几何数据需要像巨大的模型无法抗制的残忍的force approach.
目标
学习怎样产生高度信息为地形结果转换为年个时微秒 的山脉和山谷,模拟自然地形。
理解怎样产生顶点和三角形数据为地形
学习我们可以使用纹理和光照为地形
在地形沙锅内使用摄影机来行走或跑的模拟。
13.1 Heightmaps 高度图
我们使用heightmap来描述小时内和我们地形的山谷。一个heightmap是一个数组每个指定顶点的格子的特殊顶点.(一个也许有交替的实现每个世界单元的正方型).我们通常考虑作为矩阵在高度图为了每个元素在地形格子里每个顶点一对一。
当我们的高度图存储在磁盘上,我们通常分配一个字节到内存为每个元素,所以高度可以的范围为0到255.这个范围足够保存我们地形高度的转换值,但是在我们的应用我们许多需要缩放0到255在我们3D世界。例如,如果我们单元在3D世界是步,然后0-255不给我们足够的描述任何有趣的值。基于这个原因,当我们加载数据到我们的应用程序时我们分配一个整数值(或浮点)为每个高度图元素。这允许我们缩放超过0-255的匹配每个缩放必要。
一个可能的图形表示高度的grayscale图,地形低海拔的使用些黑色的值和高海拔的使用亮些的值。图13.2展示grayscale图。
13.1.1 创建一个高度图
高度图可以使用每个程序或者图象编辑器Adobe PS产生。使用图象编辑器可能更容易,和它允许你创建地形交互的你想的。另外一可以图形编辑器特性,像过滤,创建有趣的高度图。
浙公网安备 33010602011771号