地形雕刻基础:雕刻工具使用、笔刷设置、图层管理、地形材质基础

好,咱们今天聊聊地形雕刻。这是整个地形构建里最「手感」的部分。说白了,就是你在虚拟世界里当雕塑家。我刚开始接触Unreal的地形系统时,觉得这玩意儿不就是个刷子嘛,随便刷刷就行。结果第一个项目就被打脸了——刷出来的地形又假又平,毫无自然感。后来花了整整一周研究笔刷和图层,才算摸到点门道。

雕刻工具的核心操作

Unreal的地形雕刻工具,藏在「地形模式」里。你选中地形Actor,点一下模式切换,就能看到一排工具按钮。常用的就这几个:

  • 雕刻(Sculpt):抬高或降低地形高度。按住Shift是降低,松开是抬高。
  • 平滑(Smooth):把尖锐的棱角抹平。我习惯在雕刻完大形后,用平滑走一遍,效果会自然很多。
  • 平整(Flatten):把地形拍平。适合做道路、建筑地基。
  • 斜坡(Ramp):在两个高度之间拉一个缓坡。这个做山路特别好用。

嗯,这里要注意:雕刻的时候,别把笔刷强度拉满。我见过很多新手一上来就100%强度,结果地形像被狗啃了一样。我个人习惯,大形用50%强度,细节用10%-20%。

笔刷设置:你的雕刻手感来源

笔刷这东西,看着简单,其实门道很深。你想想看,同样一个笔刷,换个形状、换个衰减曲线,出来的效果天差地别。

核心参数就这几个:

参数 作用 我的建议
笔刷大小 控制影响范围 大形用500-1000,细节用50-200
笔刷强度 每次点击的抬升/降低量 大形30-50%,细节10-20%
衰减(Falloff) 边缘过渡的柔和程度 自然地形用0.5-0.8,硬边用0.1
笔刷形状 圆形、方形、自定义 圆形最常用,方形做建筑地基

我在项目中遇到过一个问题:刷山脊的时候,边缘总是太生硬。后来发现是衰减值设得太低了。把衰减调到0.7左右,山脊的过渡就自然多了。说白了,衰减就是控制「笔刷边缘的模糊程度」,数值越大,边缘越柔和。

小技巧:你可以按住Ctrl键,用鼠标左键快速调整笔刷大小。按住Shift+Ctrl调整强度。这样不用每次都去面板里改,效率高很多。

图层管理:别让你的地形变成一锅粥

图层这东西,很多人觉得麻烦,直接在一个图层上死磕。我刚开始也这样,结果做到一半想改某个区域的高度,发现根本没法单独调整——因为所有雕刻都在一个图层上。

正确的做法是:

  1. 基础地形层:放整个地形的基底高度。比如海平面、平原高度。
  2. 大形图层:山脉、丘陵的大致轮廓。
  3. 细节图层:河流沟壑、小土包、岩石突起。
  4. 修正图层:专门用来修补错误或者做局部调整。

每个图层都可以单独调整强度、开启或关闭。你想想看,如果所有东西都堆在一个图层上,想改个河床的深度,结果把旁边的山脊也拉低了,那多崩溃。

注意:图层不是越多越好。我见过有人建了20多个图层,结果自己都分不清哪个是干嘛的。一般4-6个就够用了。图层命名要清晰,比如「Base_Height」「Mountain_Main」「River_Bed」,别偷懒用「Layer1」「Layer2」。

地形材质基础:让地形「活」起来

雕刻完高度,下一步就是上材质。地形材质和普通材质不太一样,它需要根据高度、坡度、遮罩来混合不同的纹理。

最简单的做法是用地形图层(Landscape Layer)。你可以在材质里创建多个纹理采样,然后用Layer Blend节点把它们混合起来。

举个例子:

// 伪代码逻辑
// 根据高度混合草地和岩石
float Height = 地形高度;
float GrassWeight = 1 - saturate(Height / 1000);
float RockWeight = 1 - GrassWeight;

// 根据坡度混合泥土和草地
float Slope = 计算坡度;
float DirtWeight = saturate(Slope / 45);
float GrassWeight2 = 1 - DirtWeight;

// 最终颜色 = 草地 * GrassWeight + 岩石 * RockWeight + 泥土 * DirtWeight

嗯,这里要注意:材质里的Layer Blend节点,默认支持4层纹理。如果你需要更多,可以用多个Layer Blend串联。我个人习惯,一个地形材质控制在6-8层纹理以内,再多就影响性能了。

我曾经做过一个项目,地形材质用了12层纹理,结果在主机上跑起来帧率直接掉到20。后来砍到6层,效果没差多少,帧率回到了60。说白了,纹理层数不是越多越好,够用就行。

避坑指南:我踩过的那些坑

最后分享几个我实际项目中遇到的坑,你遇到了可以少走弯路:

  • 笔刷卡顿:如果你刷地形时感觉卡顿,检查一下地形分辨率是不是太高了。我建议单块地形不要超过1024x1024,大场景用多块地形拼接。
  • 材质闪烁:纹理混合时出现闪烁,通常是UV重复次数太高。把纹理的Tiling值降低到0.5-1.0,基本能解决。
  • 图层冲突:两个图层互相覆盖导致奇怪的突起。解决办法是检查图层的「影响范围」,确保它们没有重叠得太厉害。
  • 雕刻后无法撤销:Unreal的撤销栈有限,雕刻太多步骤后前面的就撤销不了了。我习惯每雕刻10分钟就保存一次,或者用「保存地形快照」功能。

好了,地形雕刻的基础就这些。说白了,多练、多试、多观察真实世界的地形。你刷得多了,手感自然就来了。下一章咱们聊聊更高级的雕刻技巧——如何用噪点和程序化工具快速生成自然地形。