结合基于高度场的地形与噪声生成的底部几何形态,创建一个复杂且自然的浮岛地形。
上表面:基于高度场的地形
- 初始布局与遮罩绘制:根据白盒绘制基本布局,定义高地和水域的凹陷区域。 利用 Point Jitter 对圆形点进行抖动并重新采样,生成不规则的岛屿形状,并将其作为高度场的遮罩。
-
边缘过渡遮罩:通过扩大和缩小遮罩并相减得到边缘区域;使用模糊处理平滑过渡,并通过 Heightfield Wrangle 节点将边缘向下弯曲,确保与岛屿底部自然衔接。
- 表面细节:利用 Heightfield Noise 和 Heightfield Distort 添加地形的自然变化。 将高度场转换为几何体,并通过 Boolean 节点根据岛屿遮罩裁剪几何体。
- 基础设置:翻转顶部表面几何体作为底部基础;使用Attribute Wrangle计算点与岛屿中心的水平距离,并将结果存储在 Cd.x 属性中(边缘值设置为0),形成衰减遮罩。
- 噪声应用:通过Point VOP应用程序化噪声,根据点到中心的距离修改其位置;将噪声乘以 Cd.x 属性,确保变形在边缘逐渐消失;使用 Attribute Wrangle 调整点的垂直位置 (y),形成自然的底部锥形结构。
在UE中的集成技巧
- 直接导入高度场到UE可能会遇到以下问题:
- 使用透明度遮罩:因精度限制导致岛屿边缘出现锯齿。
-
导入为几何体:无法使用UE的Landscape工具,难以实时调整地形颜色或细节。
- 解决方案:将几何体和高度场都导入UE;使用 Runtime Virtual Texture (RVT) 储存高度场地形绘制结果; 配置几何体材质以读取RVT数据,支持实时绘制地形颜色,并保持锐利、干净的岛屿边缘效果。