Focus On 3D Terrain Programming(chap1-2学习笔记)

Focus On 3D Terrain Programming(chap1-2学习笔记)
Focus On 3D Terrain Programming 是本好书。随便翻了一些国内外相关论文,都可以找到本书的影子。

(我这有完整的书和源代码,不知道怎么上传,需要的留个信。)

Chap1 Notes
■Willem H. de Boer's geomipmapping algorithm
■Stefan Roettger's quadtree algorithm
■Mark Duchaineau's ROAM algorithm

Chap2 Notes
Problems:
■ What heightmaps are, how to create them, and how to load them
■ How to render terrain using a brute force algorithm
■ How to generate fractal terrain using two algorithms: fault formation and midpoint displacement(the plasma fractal or the diamond-square algorithm)

1.A heightmap is a grayscale image in which each pixel represents a height value.(ex. the height ranges from 0–255, the number of shades of gray in a grayscale image. Dark colors represent a lower elevation, and lighter colors represent a higher elevation.)

Focus On 3D Terrain Programming(chap1-2学习笔记)_第1张图片 
Figure 2.1 A grid of vertices with non-defined height value

Focus On 3D Terrain Programming(chap1-2学习笔记)_第2张图片   
Figure 2.2 The 128 × 128 heightmap(used to create Figure 2.3).

2.The Brute Forceof the Matter(硬渲染)

Rendering terrain using a brute force algorithm is incredibly simple,and it provides the highest amount of detail possible. But, slow is a drawblack.

Focus On 3D Terrain Programming(chap1-2学习笔记)_第3张图片
Figure 2.3 Brute force terrain image created by using the heightmap in Figure 2.2.

3.(1)Fault Formation
One method of fractal terrain generation is called fault formation. Fault formation is the process of generating “faults” in terrain; for the Fractal Terrain Generation most part, it produces fairly smooth terrain.

Focus On 3D Terrain Programming(chap1-2学习笔记)_第4张图片
Figure 2.4 The first step in the fault-formation algorithm.

Focus On 3D Terrain Programming(chap1-2学习笔记)_第5张图片
Figure 2.5 A map generated with completely random height values.

Focus On 3D Terrain Programming(chap1-2学习笔记)_第6张图片

Figure 2.6 Heightmaps that were generated using the
fault-formation algorithm and the erosion filter. The top
image has a filter value of 0.0f, the middle image has a filter
value of 0.2f, and the bottom image has a filter value of 0.4f.

Note:Midpoint Displacement Fault formation works great for a nice little scene composed of some small hills, but something more chaotic than that, such as a mountain range.

(2)Midpoint Displacement(
又名:the plasma fractal or the diamond-square algorithm )

Note: Midpoint Displacement works great for a chaotic scene . But, the algorithm can only generate square heightmaps, and the dimensions have to be a power of two.This is unlike the fault formation algorithm, in which you can specify any dimension that you want.


你可能感兴趣的:(Focus On 3D Terrain Programming(chap1-2学习笔记))