6-11 设置河床高度
在上一章中,我们为地图单元添加了一个新的顶点,使连接区域从以前的3个矩形构成,变为4个矩形构成。新增的顶点其实就是河床的最低点。在这一章中,我们将设置这个顶点在垂直方向上的坐标。使其成为河床最低点。
首先现在的地图单元中的每个顶点,都是经过扰动的。但是我们希望河床最低点的顶点不会扰动,这样就能避免因为高低起伏的随机,让河流的某些地方看起来想逆流的情况。同时,还需要让这个顶点足够低,即使其两侧的顶点有随机扰动,也会和自身高驰一定的高度距离,为水面流出足够的空间。
我们回到HexMetrics.cs
脚本中,在这里定义一个常量,用来表示河道最低点的偏移量。代码如下:
1 | public static class HexMetrics |
接着,我们回到HexCell.cs
脚本中添加一个属性,使用之前定义的常量来计算当前地图单元河床顶点的高度。代码如下:
1 | public class HexCell : MonoBehaviour |
这样我们就通过一个常量,设置好了河床最低点的偏移量。并且创建了一个方法以供地图单元或连接区域进行构建的时候调用。接下来的一章中,我们将使用这个方法构建带河道的连接区域。