TerraformFX 快速上手
Cinema 4D 的程序化地形与景观生成系统 —— 从高山、海岸到沙漠、火山口,层层叠加生成器与滤镜,创建无限高分辨率景观。
1. 核心概念
1.1 父子层级架构
tfTerrain(父对象 —— 全局设置:尺寸、分段、显示)
├── tfNoise(生成器) ← 叠加噪声创建地形
├── tfGradient(生成器) ← 渐变控制
├── tfErosionHydraulic(滤镜) ← 水力侵蚀精修
└── tfCurve(滤镜) ← 曲线调整- 自上而下演算:每个运算符依次处理前序结果,最终生成地形几何体
- 非破坏性:所有运算符保留完整参数历史,随时回退调整
- 多线程优化:充分利用所有 CPU 核心
1.2 生成器 vs 滤镜
| 类型 | 作用 | 代表 |
|---|---|---|
| 生成器 (Generator) | 添加新地形特征(海拔数据) | tfNoise, tfGradient, tfGrid, tfSpline |
| 滤镜 (Filter) | 修改/优化已有高度图 | tfErosion, tfCurve, tfBlur, tfRiver |
口诀:生成器"造山",滤镜"雕山"。
1.3 关键概念
- 高度图 (Heightmap):地形由 2D 灰度图驱动 → 黑 = 低,白 = 高
- 混合模式 (Blend Mode):控制生成器之间的叠加方式(Normal / Add / Subtract 等)
- 遮罩 (Masking):按海拔、坡度或着色器限制运算符生效范围
- 预览标签页:实时查看高度图、坡度图、差异图,支持 TIFF 导出
2. tfTerrain — 全局设置
tfTerrain 是所有运算符的父对象,控制全局属性。新建时自动带 4 个默认子运算符(tfNoise + tfGrid + tfFlood + tfErosionHydraulic),可直接使用或删除从零开始。
2.1 基础参数
| 参数 | 说明 | 默认/建议 |
|---|---|---|
| Size X / Z | 地形平面尺寸 | 按场景设定 |
| Segments X / Z | 网格分辨率(越高地形越精细) | 建议 256-2048 |
| Lock Size/Segments Ratio | 锁定尺寸/分段比例,改尺寸时分段自动适配 | 推荐开启 |
| Tessellation | Quads(四边形)/ Triangles 1 / Triangles 2 | Quads(通用) |
| Subdivide Bottom | 实体底部细分(用于变形/模拟,增加内存) | 非必要不开 |
2.2 显示预设
| 预设 | 效果 |
|---|---|
| Alpine | 高山(默认) |
| Grand Canyon | 大峡谷 |
| Atacama Desert | 沙漠 |
| Himalayas | 喜马拉雅 |
| Analysis, colored | 高程分析模式 |
Source可切换为Slope—— 基于坡度映射颜色,快速区分悬崖与平地。
2.3 边界与曲面
| 参数 | 用途 |
|---|---|
| Even Border | 生成平坦边缘 → 岛屿效果 |
| Level | 调整地形基准高度 |
| Curved Terrain | 模拟行星表面曲面 + 地平线效果 |
| Planet Radius | 默认 6371cm,减小 = 曲率增加 |
3. 生成器详解
3.1 tfNoise — 最核心的生成器
基于分形噪声创建绝大部分地形特征。两种模式:
Maxon 模式(14 种标准噪声,默认 Turbulence):
- 简单直观,快速出效果
- 核心参数:Octaves(细节层数)、Seed(随机种子)、Scale(缩放)、Translate(平移)
Advanced 模式(8 种噪声,更多控制):
| 噪声类型 | 视觉效果 | 适用场景 |
|---|---|---|
| Perlin | 经典平滑噪声 | 通用山脉 |
| Simplex | 类似 Perlin,更少方向性伪影 | 自然山地 |
| Cellular | Voronoi 细胞结构 → 火山口/高原 | 陨石坑、高原 |
| Gabor | 小波噪声,可控制方向性 | 风蚀地貌、沙丘 |
| Value | 基础值噪声 | 简单丘陵 |
| Cubic | 三次插值 | 平滑过渡 |
| Prairie (Macro) | 宏观尺度 | 大规模地形骨架 |
| Mixed (Macro) | 混合宏观 | 多尺度复合 |
Advanced 模式独有参数:
| 参数 | 功能 | 建议 |
|---|---|---|
| Fractal Type | FBM(通用山脉)/ Billow(起伏)/ Ridged Multifractal(山脊) | 山脊用 Ridged |
| Lacunarity | 八度间缩放比 | < 2.0 = 较平滑 |
| Persistence | 八度间振幅衰减 | 0.0 = 无细节,1.0 = 全细节 |
| Warp | 梯度扰动变形 | 增加自然感 |
| Absolute | 下半部向上折叠 → 尖锐山脊 | 石林/峡谷 |
Cellular 专属:
Return Type选 "距离" 类型 → 火山口地貌Jitter控制种子点随机性
Gabor 专属:
Anisotropy+Orientation→ 控制方向性(风蚀/沙丘纹路)
3.2 其他生成器
| 生成器 | 功能 | 关键参数 |
|---|---|---|
| tfFormula | 数学公式生成高度 | 输入公式表达式 |
| tfGradient | 渐变生成 | Radial / Linear 衰减曲线 |
| tfGrid | 网格控制 + tfBrush 手绘 | 网格分辨率 |
| tfGroup | 分组管理多个运算符 | — |
| tfShader | 任意 C4D 着色器驱动 | 着色器槽位 |
| tfSpline | 样条线驱动 | 样条槽位 |
| tfTrace | 追踪生成 | — |
4. 滤镜详解
4.1 tfErosion — 侵蚀模拟(核心滤镜)
Hydraulic(水力侵蚀 / 2D Particles):
| 参数 | 说明 | 典型值 |
|---|---|---|
| Particle Count | 粒子数 | 10000+ |
| Lifetime | 粒子寿命(帧) | 更长 = 更远流动 |
| Radius | 粒子半径 → 沟槽宽度 | 3-10cm |
| Capacity | 每粒子携带物质容量 | — |
| Erosion | 每帧侵蚀量 | — |
| Deposition | 沉积百分比 | — |
| Evaporation | 蒸发率 | 1% |
| Gravity | 重力(越大水流越急) | — |
| Inertia | 惯性(越大水越直) | — |
Erode Profile 曲线控制侵蚀沟槽截面形状。Output Erosion Maps 输出顶点贴图用于着色。
Hydraulic(X-Particles 模式):
- 3D 粒子模拟,可控性更强但更慢
- 独有:Liquid(流体解算器)、Distance to Terrain、Iterations、Friction、Modifiers(引入 xpWind 等外力)
Snow(雪侵蚀):
| 参数 | 作用 | 建议 |
|---|---|---|
| Iterations | 积雪计算次数,越多雪越厚 | 低 Radius + 高 Iterations |
| Radius | 保留细节程度,越小细节越多 | 大场景用小值 |
| Lift | 积雪深度偏移 | 最后微调用 |
| Add Snow Layer | 一键创建雪材质 | 快速可视化 |
Coastal(海岸侵蚀):模拟海岸线侵蚀效果 Thermal Weathering(热风化):模拟热胀冷缩导致的岩壁剥落 Morphological Mode:形态学操作
4.2 tfRiver — 河流生成
两种主线模式:
| 模式 | 原理 | 适合场景 |
|---|---|---|
| Settle Spline | 样条线拖入场景 → 自动沉降到山谷 | 精确控制路线 |
| Perlin Worm | 设定起点/终点 → 程序化生长 | 快速自然河流 |
关键参数:
| 参数 | 说明 |
|---|---|
| Depth | 河流切割深度(含沿河长度曲线) |
| Width | 河流最大宽度(含沿河长度曲线) |
| Iterations(Settle) | 样条沉降迭代次数 |
| Inertia / Slope / Noise(Perlin) | 蠕虫行为权重 |
| Step Size | 每步移动距离(越小路径越精细) |
支流系统(Secondary: Simple Distribute):
- Count / Length / Branching Angle → 控制支流数量、长度、角度
- Distribution Curve → 控制支流沿主线分布
渲染标签页:
Profile Curve→ 定义河床截面形状Soft Slope→ 柔化河岸坡度Edge Noise→ 河岸边缘侵蚀噪声Feather Start/End→ 河流首尾淡出
Export Rivers将河流导出为样条或几何体。Add River Layer一键创建河床材质。
4.3 其他重要滤镜
| 滤镜 | 功能 | 用法 |
|---|---|---|
| tfAdjustment | 全局高度微调 | Gain/Offset/Contrast |
| tfBlur | 平滑高度图 | 柔化尖锐地形 |
| tfClamp | 钳制海拔范围 | 切平山顶/谷底 |
| tfCurve | 曲线重映射 | 精细控制高度分布 |
| tfDistribute | 重分配高度值 | 均匀化或极端化 |
| tfFlood | 洪水效果 | 制造水平面 |
| tfFold | 折叠地形 | 创造尖锐褶皱 |
| tfHighpass | 高通滤波 | 提取高频细节 |
| tfSharpen | 锐化 | 增强细节 |
| tfMirror | 镜像 | 对称地形 |
| tfPath | 路径添加 | 小路/步道 |
| tfQuantize | 量化高度 | 阶梯状地形(梯田) |
| tfWarp | 扭曲变形 (+ tfBrush 手绘) | 艺术化地形雕刻 |
5. 专用功能
5.1 tfRoad — 程序化道路
沿样条线生成道路,支持自动克隆路边设施(路灯、护栏、交通锥、树木)。
| 参数 | 说明 |
|---|---|
| 样条槽位 | 拖入样条定义路线 |
| 宽度 / 材质 | 道路宽度和表面 |
| 克隆设置 | 自动排列路边资产 |
5.2 tfRock — 程序化岩石
生成天然岩石和自定义岩石形状,用于地形散布。
5.3 tfBrush — 手绘笔刷
操控 tfGrid 和 tfWarp 的控制网格,在视口中直接手绘调整地形。
5.4 tfRiverExport
将 tfRiver 中的河流点导出为分段样条线或几何体,供其他模块使用。
5.5 预设系统
内置地形预设和自定义预设管理,可保存/加载完整地形配置。
6. 地形着色器系统
6.1 Advanced Terrain Shader(高级地形着色器)
分层着色器系统,支持:
- 多材质层叠加(岩石、草地、雪、沙等)
- 曲率贴图(Curvature Map) → 山脊和岩石自动着色
- 环境光遮蔽(AO) → 增加立体感
- 与遮罩系统联动
6.2 GradientUV Shader(渐变 UV 着色器)
基于海拔的渐变着色,参数:
- Color Gradient(颜色渐变)
- Remap U / V(重映射控制)
- 自定义曲线
6.3 Terrain Operator Shader(地形运算符着色器)
在材质内引用地形贴图(海拔图、坡度图、曲率图),精确遮罩和控制特定地形特征的着色。例如:
- 用坡度图驱动 → 悬崖用岩石材质,平地用草
- 用海拔图驱动 → 山顶积雪,山脚绿地
6.4 Terrain Color Palette(地形调色板)
内置超过 1,450 种预设调色板。
7. 常见场景工作流
7.1 山脉场景
tfTerrain (Segments: 512-1024)
├── tfNoise (Advanced → Perlin, FBM, Octaves: 6-8, Scale: 中)
├── tfNoise (Advanced → Ridged Multifractal, Octaves: 4, Scale: 大) ← 大尺度山脊
├── tfNoise (Advanced → Perlin, Octaves: 4, Scale: 小) ← 细节
├── tfErosionHydraulic (Particle Count: 15000, Gravity: 中高)
├── tfCurve (提升对比度)
└── Advanced Terrain Shader (岩石 + 草地 + 雪层)7.2 沙漠沙丘
tfTerrain
├── tfNoise (Advanced → Gabor, Anisotropy: 高, 方向性单一)
├── tfNoise (Advanced → Gabor, Scale: 更小, 细节波纹)
├── tfBlur (轻微柔化)
├── tfErosionThermal (轻度)
└── GradientUV Shader (沙色渐变)7.3 冰雪场景
tfTerrain
├── tfNoise (Advanced → Perlin, Octaves: 6)
├── tfNoise (Advanced → Ridged, 山脊)
├── tfErosionHydraulic
└── tfErosionSnow (Iterations: 5-10, Radius: 20, Lift: 3)
└── Add Snow Layer → 自动材质7.4 岩石场景(石林 / 峡谷)
tfTerrain
├── tfNoise (Advanced → Cellular, Return Type: 距离型, Jitter: 中)
├── tfNoise (Absolute: ON → 尖锐效果)
├── tfErosionThermal (热风化 → 岩石剥落感)
├── tfSharpen (增强细节)
└── Advanced Terrain Shader (曲率着色 → 岩石质感)7.5 河流山谷
tfTerrain
├── tfNoise (Perlin, Octaves: 6)
├── tfNoise (Ridged, Scale: 大)
├── tfErosionHydraulic (初步侵蚀)
├── tfRiver
│ ├── Main: Perlin Worm (设定起止点, Slope: 高, Noise: 中)
│ └── Secondary: Simple Distribute (Count: 5, Length: 20%)
├── tfErosionHydraulic (二次侵蚀,河流融入地形)
└── Advanced Terrain Shader (河床 + 植被 + 岩石层)7.6 植被场景配合 Taiao
tfTerrain (地形基础)
├── ... 生成器 + 滤镜 ...
└── 材质: Terrain Operator Shader → 输出遮罩
↓
Taiao toGrass / toTree → 使用地形遮罩控制散布8. 技巧与注意事项
8.1 性能
| 方面 | 建议 |
|---|---|
| Segment Count | 调节时用低分辨率(256),最终渲染前升高(1024-2048) |
| Subdivide Bottom | 仅需要变形/封闭模拟时开启,大幅增加内存 |
| Lock Size/Segments Ratio | 始终开启,改场景尺寸时分段自动适配 |
| Hydraulic(X-Particles 模式) | 细节丰富但慢,日常用 2D Particles 模式 |
8.2 工作流
| 技巧 | 说明 |
|---|---|
| 从大到小 | 先叠加宏观噪声建骨架,再叠微观噪声加细节 |
| 先 Noise 后 Erosion | 侵蚀放在生成器链末端,精修完整地形 |
| 活用遮罩 (Masking) | 按海拔/坡度精确控制每个运算符的生效范围 |
| Preview 标签页 | 时刻查看高度图/坡度图,比 3D 视口更直观 |
| Blend Mode | 多个生成器叠加时尝试不同混合模式(Add 常用于叠山) |
| 曲线驱动 | Depth Curve / Width Curve / Erode Profile → 比单一数值更自然 |
8.3 常见陷阱
| 问题 | 解决 |
|---|---|
| 地形太规则(CG 感重) | 多层不同 Scale 的 Noise 叠加 + Warp 扰动 |
| 侵蚀效果不明显 | 增加 Particle Count / Lifetime / Gravity |
| 河流不沿山谷走 | Settle Spline 模式 + 提高 Iterations;或提高 Slope 权重 |
| 渲染出现锯齿/伪影 | 提高 Segments,或增加 tfRiver → Subdivisions |
| 地形太"平" | Absolute 开启 + Ridged Multifractal 分形类型 |
| 材质不自然 | 使用 Terrain Operator Shader 基于海拔/坡度/曲率驱动材质混合 |
8.4 材质技巧
- 曲率着色:用 Advanced Terrain Shader 的 Curvature Map → 凸面(山脊)= 岩石,凹面(山谷)= 泥土/草地
- 海拔着色:用 GradientUV Shader → 低海拔 = 绿,中海拔 = 棕,高海拔 = 灰/白
- AO:Advanced Terrain Shader 的 Ambient Occlusion → 增加沟壑立体感
9. 免费教程资源
官方资源
| 资源 | 链接 |
|---|---|
| 官方文档(全英文) | docs.insydium.ltd/terraformfx |
| YouTube 频道 | INSYDIUM LTD |
| 官方培训播放列表 | Official Training |
| Top Tip Tuesday 系列 | 播放列表 |
| 培训归档 | 播放列表 |
推荐单集
| 视频 | 内容 | 链接 |
|---|---|---|
| Terrain Flow | 用 tfNoise Advanced 噪声做流动地形动画 | YouTube |
| TerraformFX 入门 | 官方功能介绍(B 站搬运) | Bilibili BV1qh411h7p7 |
| Top Tip Tuesday: TerraformFX | 噪波生成动态地形(B 站) | Bilibili BV1txScYUEzZ |
中文资源
| 资源 | 链接 |
|---|---|
| B 站 INSYDIUM 官方中文号 | @INSYDIUM |
| 搜狐教程(上篇) | TerraformFX 高度可定制化的景观环境 |
| 艾伦网插件介绍 | allencn.cn |
| 翼狐网课程(付费) | yiihuu.com |
| 抖音:山边鱼塘场景 | douyin.com |
社区资源
| 资源 | 链接 |
|---|---|
| INSYDIUM Discord | discord.gg |
| 知乎:Fused 全系列介绍 | zhuanlan.zhihu.com/p/663545683 |
| C4DSKY 功能预览 | c4dsky.com/102478 |
10. 附录:运算符速查表
生成器(8 个)
| 简称 | 全称 | 一句话 |
|---|---|---|
| tfNoise | Terrain Form Noise | 分形噪声,最核心 |
| tfGradient | Terrain Form Gradient | 渐变驱动 |
| tfGrid | Terrain Form Grid | 网格手绘控制 |
| tfFormula | Terrain Form Formula | 数学公式 |
| tfShader | Terrain Form Shader | C4D 着色器 |
| tfSpline | Terrain Form Spline | 样条线驱动 |
| tfTrace | Terrain Form Trace | 追踪生成 |
| tfGroup | Terrain Form Group | 分组管理 |
滤镜(15 个)
| 简称 | 全称 | 一句话 |
|---|---|---|
| tfErosion | Terrain Form Erosion | 侵蚀模拟(5 种模式) |
| tfRiver | Terrain Form River | 河流系统 |
| tfAdjustment | — | 高度微调 |
| tfBlur | — | 平滑/模糊 |
| tfClamp | — | 钳制范围 |
| tfCurve | — | 曲线重映射 |
| tfDistribute | — | 重分配高度 |
| tfFlood | — | 洪水效果 |
| tfFold | — | 折叠 |
| tfHighpass | — | 高通滤波 |
| tfSharpen | — | 锐化 |
| tfMirror | — | 镜像 |
| tfPath | — | 路径 |
| tfQuantize | — | 量化 / 阶梯 |
| tfWarp | — | 扭曲变形 |
下一步:本文将作为 TerraformFX 的总索引。后续会为各个核心运算符(tfNoise / tfErosion / tfRiver / tfRoad 等)单独建立深入页面,包含所有参数详解、实际案例和参数预设。