今天我将分享如何创建随机表面地形。这可能不是最好的,但我想分享我的想法。
首先,创建一个点列表作为地形的宽度,并使用这些点在指定的矢量方向上生成一条直线作为控制后续地形起伏点的参考线,如下所示。
第二步,将列表索引移一并删除索引为负的位。此步骤创建删除第一个和最后一个位置的直线列表。接下来,将直线分成相等的部分作为变化的控制点。然后,该点的列表索引也向右移动一位,我们得到列表的前两项。这将为您提供线两端的点并为您提供一个列表。可以检索两个端点以供以后使用。
第三步,将上一步得到的列表展平,排除端点,并为每个点生成球坐标系。用于控制对应点的浮雕坐标系。然后在坐标系内生成一个随机表并用作点的坐标。接下来,将球坐标系连接到生成点作为Z 值和旋转角度的节点,并使用numberslider 滑块控制原点偏移。
第四步,根据指定的长度重新组合先前生成的点并将它们连接成曲线。
第五步,添加之前删除的两条直线,向相反方向移动列表的索引,使两条直线成为边缘,并执行放样放样。效果是:
您可以测试调整 最后,滑块来控制地表起伏,调整场地节点大小来控制地形大小等。效果是:
是不是超级简单呢?不用使用太多节点就可以生成这样的随机皮肤。前半部分的大部分操作涉及重复移动和提取列表。请这样做!