C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  26 Posts :: 0 Stories :: 21 Comments :: 0 Trackbacks









  • 积分 - 69399
  • 排名 - 320




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
■ 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.)

Figure 2.1 A grid of vertices with non-defined height value

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.

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.

Figure 2.4 The first step in the fault-formation algorithm.

Figure 2.5 A map generated with completely random height values.

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.

posted on 2009-12-12 15:28 COOOOOOOOL 阅读(1033) 评论(4)  编辑 收藏 引用


# re: Focus On 3D Terrain Programming(chap1-2学习笔记) 2010-03-12 16:07 yao
谢谢!!  回复  更多评论

# re: Focus On 3D Terrain Programming(chap1-2学习笔记) 2010-08-23 09:21 kamel
请问可以发我一下书和源码么? 谢谢  回复  更多评论

# re: Focus On 3D Terrain Programming(chap1-2学习笔记) 2012-09-07 09:37 王月  回复  更多评论

# re: Focus On 3D Terrain Programming(chap1-2学习笔记) 2013-04-28 14:20 wb
请问能给我一份书和源代码么?, 万分感谢!!!!  回复  更多评论

【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理