首页 > 代码库 > 《聚焦3D地形编程》学习点

《聚焦3D地形编程》学习点

痞子龙的译本虽然称不上好,但却保留了原汁原味,看这本书时最好结合原文与痞子龙的译文。另外,如果有过地形生成的经验再看这本书时有些帮助,这本书介绍的专业的室外地形开发,很全面的介绍。

 

仅是个人总结,可能不适合网友阅读。

使用fault formation和midpoint displacement产生不规则地形(程序式生成高度图)
burte force(硬渲染)是最慢的地形渲染算法,如果是5*5的高度图,那么将产生5*5个顶点,
fault formation+burte force算法=>地形生成算法+地形渲染算法
 
高度图使用unsigned char数组存储;实际上暂时使用浮点数表示也可以(如fault formation和midpoint displacement算法),像这种地形生成算法用浮点数表示高度较精确。等创建完高度图并规格化之后,再传入高度图数组unsigned char中。
 
高度图中的每个像素都是一个灰度值,暗色表示低洼,亮色表示隆起;也有通过程序动态生成高度图的情况。
使用RAW作为高度图的目的:仅仅包含纯数据,容易加载。
 
fault formation(程序式生成高度图)可以产生比较平滑的地形
fault formation大体分为两个阶段
1.生成高度图
2.滤波       
由于算法特性不同,所以fault formation不一定生成适合所有场景的高度图,所以就有了Midpoint displacement算法,而且同样是两个阶段,只不过高度图生成算法不同而已,滤波算法相同。

《聚焦3D地形编程》学习点