翻译Houdini节点官方文档:HeightField Erode(高度场侵蚀)

官方文档地址:https://www.sidefx.com/docs/houdini/nodes/sop/heightfield_erode.html

概述

该节点使用 “降雨”、“土壤的可侵蚀性” 和 “夹带率(entrainment rate)” 作为变量来模拟侵蚀和沉积物的积累。

该节点是在 Play 期间进行迭代工作的,所以在第一帧没有任何作用。你需要Play才能看到节点的效果。模拟计算一旦收敛到看起来不错的样子,你就可以将它从该帧导出到文件(使用 Height Field Output)。

作为示例,可以从架子上 Terrain FX 选项卡创建 Mountain ,然后按 Play:
在这里插入图片描述

控制外观的重点参数

水道形状

  • Main ▸ Hydro ▸ Bank angle:降低以获得宽而浅的水道,调高以获得狭窄而深的水道。
  • Advanced ▸ Precipitation ▸ Density:调低以获得窄水道,调高以获得宽水道。
  • Advanced ▸ Raindrop settings ▸ Expand radius:调低以获得更蜿蜒、狭窄的水道,调高以获得更直、更宽的水道。
  • Advanced ▸ Raindrop settings ▸ Blur radius:调低以获得更深的水道,调高以获得更柔和的水道。

山脊形状

  • Main ▸ Thermal ▸ Cut angle:调低以获得尖锐的脊,调高以获得圆滑的脊。
  • 这也受 Removal rate 的影响。

湖泊

  • Advanced ▸ Precipitation ▸ Evaporation rate:调低以获得更大湖泊,调高以获得更小或没有湖泊。
  • Advanced ▸ Raindrop settings ▸ Blur radius:调低以获得更粗糙的湖泊边缘,调高以获得更平滑的湖泊边缘。

泥石流

  • Advanced ▸ Debris flow ▸ Quantization:调低以获得更平滑的泥石流,调高以获得颗粒状的泥石流。
  • Advanced ▸ Debris flow ▸ Max height:调低会让沿着山脊线的方向有更少/没有泥石流,调高会让沿着山脊线的方向有更多泥石流。
  • Advanced ▸ Debris flow ▸ Repose angle:调低以获得更少的堆积(如沙子),将其调高以获得更多的堆积(如岩石)。

提示和注意事项

  • 对于第一次侵蚀,在 Advanced 分页中:
    • Hydro ▸ Erodability Adjustments:
      • Ramp up iterations 设置为0。
      • Initial factor 设置为1。
      • Slope factor 设置为0。
    • Hydro ▸ Riverbed:
      • Sediment capacity 设置为20。
    • Debris flow:
      • 打开 Debris post smooth。
  • Removal Rate 可以是负值,这样土壤就会增加。
  • 你可以通过减少 Max debris depth 来修复点蚀/孔洞。
  • Grid bias 可以是一个mask,来形成一种不均匀的侵蚀效果。mask要映射到 -1 ~ 1 的范围。

全部参数

Reset Simulation(重置模拟)
单击此按钮来清除模拟的缓存。如果你不是在第一帧,请小心单击此按钮,因为 Houdini 将不得不重新模拟你正在查看的每一帧。所以如果你所在的帧数较高,这可能会很慢。

Freeze(冻结)
冻结指定帧的输出。这可以用于当确定了所需的帧数后,修复输出。

Freeze at Frame(冻结的帧数)
冻结的帧数。

1. Main(主要参数)

Global Erosion Rate(全局侵蚀率)
控制每次迭代侵蚀多少米的基岩或泥土(取决于此处的夹带物质)。

1.1 Hydro(水力侵蚀)

这些选项控制来自于降雨的侵蚀,即水流下坡造成的地形侵蚀。你可以使用 Precipitation 分页上的参数来控制降雨量。你可以使用 Flow 分页的参数来控制水流量。

Erodability(可蚀性)
控制基岩或泥土(取决于此处的夹带物质)的柔软度。较高的值意味着地形更容易被侵蚀,从而导致更深的切口、更多的沉积物、更多的n泥土被沉积。

erodabilitymaskmode(可蚀性是否启用mask)
是否使用mask来控制可蚀性

Erodability Mask(可蚀性mask)
用于控制可蚀性的mask

Erosion Rate(侵蚀率)
控制侵蚀的速率。这将乘算在 Erodability 上。

Bank Angle(河岸角度)
设置河岸相对于河床的角度。更低的值会使河道更宽更平坦。

bankanglemaskmode(河岸角度是否启用mask)
是否使用mask来控制河岸角度

Bank Angle Mask(河岸角度mask)
用于控制河岸角度的mask

Spread Iterations(传播迭代)
模拟时,水扩散的迭代次数。更多的迭代会导致更长且密度更低的切口。

1.2 Thermal(热力侵蚀)

热力侵蚀是由冻结的岩石融化和破裂引起的,会造成磨损和平滑的特征,物质会堆积在斜坡底部。

Erodability(可蚀性)
控制侵蚀层(eroding layer)和物质层(material layer)的柔软度。较高的值意味着地形更容易被侵蚀,从而导致更深的切口、更多的沉积物、更多的泥土被沉积。

erodabilitymaskmode(可蚀性是否启用mask)
是否使用mask来控制可蚀性

Erodability Mask(可蚀性mask)
用于控制可蚀性的mask

Erosion Rate(侵蚀率)
控制侵蚀的速率。这将乘算在 Erodability 上。

Cut Angle(切割角度)
设置热力侵蚀停止切割的角度。较小的角度会使切口更平坦,并允许发生更多的侵蚀。

cutanglemaskmode(切割角度是否启用mask)
是否使用mask来控制切割角度

Cut Angle Mask(切割角度mask)
用于控制切割角度的mask

2. Advanced(高级参数)

Global Seed(全局随机种子)
随机种子使相同输入和参数的侵蚀结果有差异。

2.1 Hydro Erosion(水力侵蚀)

Removal Rate(移除率)
由于水力侵蚀而被移除的泥土的比例。这模拟了水带走了一定量的泥土而不是全部都堆积。0表示没有移除。负值对应于泥土密度低于岩石的情况,此时一单位被侵蚀的岩石,将产生多于一单位的泥土。

Max Debris Depth(最大泥土深度)
当泥土层达到此深度时停止侵蚀。

Grid Bias(主轴偏移)
控制物质移动的偏移度。将其设置为正值会使运动更偏向于主轴方向,设置为负值时,会更偏向相对于主轴成 45 度角的方向。默认值为0意味着在任何方向上都没有偏移。(此参数可见附录的译者实验)

gridbiasmaskmode(主轴偏移是否启用mask)
是否使用mask来控制主轴偏移

Grid Bias Mask(主轴偏移mask)
用于控制主轴偏移的mask

2.1.1 Erodability Adjustments(可蚀性调整)

Ramp-up Iterations(增长迭代)
可蚀性达到最大值的迭代。

Initial Factor(初始因子)
控制物质在初始时具有多少设定的可侵蚀性。它会随着设置的 spread iterations 而增加,直到最大迭代,之后就会保持在设置的最大值上。

Slope Factor(坡度系数)
控制地形坡度对侵蚀量的影响程度。较高的值会增加坡度对侵蚀的影响,而较低的值会降低它。降低该值会导致可蚀性增加。

2.1.2 Riverbed(河床)

Erosion Rate Factor(侵蚀率系数)
乘算于 Erosion Rate 的系数,仅作用于河床。增加此值会导致河床上侵蚀更严重,结果会增加切口的深度。

Deposition Rate(沉积率)
控制多余的沉积物转变为泥土的速率。值为0意味着没有沉积物变成泥土,而值为1会将所有产生的沉积物转化为泥土,而基岩将受到产生的泥土的更多保护。

depositionratemaskmode(沉积率是否启用mask)
是否使用mask来控制沉积率

Deposition Rate Mask(沉积率mask)
用于控制沉积率的mask

Sediment Capacity(泥沙携带量)
每单位流动水流所能携带的泥沙量。值越高,物质在开始沉积多余沉积物之前的可侵蚀时间越长。

2.1.2 Riverbank (河岸)

Erosion Rate Factor(侵蚀率系数)
乘算于 Erosion Rate 的系数,仅作用于河岸。增加此值会导致堤岸的侵蚀更严重,结果会增加切口的宽度。

Max Bed to Bank Water Ratio(河岸与河床水柱比例最大值)
将被视为河岸的河岸与河床水柱高度比的最大值。高于此数字的比率在侵蚀期间不会被视为河岸。

2.2 Thermal Erosion(热力侵蚀)

Removal Rate(移除率)
由于热力侵蚀而被移除的泥土的比例。这模拟了风带走了一定量的泥土而不是全部都堆积。0表示没有移除。负值对应于泥土密度低于岩石的情况,此时一单位被侵蚀的岩石,将产生多于一单位的泥土。

Max Debris Depth(最大泥土深度)
当泥土层达到此深度时停止侵蚀。

Grid Bias(主轴偏移)
控制物质移动的偏移度。将其设置为正值会使运动更偏向于主轴方向,设置为负值时,会更偏向相对于主轴成 45 度角的方向。默认值为0意味着在任何方向上都没有偏移。(此参数可见附录的译者实验)

gridbiasmaskmode(主轴偏移是否启用mask)
是否使用mask来控制主轴偏移

Grid Bias Mask(主轴偏移mask)
用于控制主轴偏移的mask

2.3 Precipitation(降水)

Mask
控制降雨的Mask的名称。层中的值会乘算 Amount 参数。这是从节点的第二个输入中读取的。

Amount(降水量)
每帧模拟的降雨量。如果值非常高,你将不会看到太多的侵蚀,因为基本上整个地形都会被水淹没。

Density(密度)
降水有多紧密。较小的密度会产生更多的侵蚀线。更大的密度会产生更分离且更宽的侵蚀裂缝。

Evaporation Rate(蒸发率)
蒸发速率。较高的速率将在每个帧中留下较少的积水。如果你想要更多的水池,你可以增加 Amount 和/或 降低 Evaporation Rate。

2.3.1 Raindrop Settings(雨滴设置)

这些设置可用于控制雨滴的大小。当你扩大每个雨滴的半径时,你会得到更少的雨滴,以确保降水密度保持不变。

Expand Radius(扩展半径)
该参数可用于扩大每个雨滴的半径以覆盖更多的单元格。这会产生更大的雨滴,这会使地形上的切口更稀疏但宽度更大。

Blur Radius(模糊半径)
模糊半径

2.4 Water Flow(水流)

Quantization(分块程度)
分块程度

Post Smooth(后处理平滑)
作为后处理步骤平滑地形上的水。

2.5 Debris Flow(泥石流)

Spread Iterations(传播迭代)
为每帧运行多少次传播算法迭代。

Quantization(分块程度)
控制泥石流的分块程度。较低的值会使泥石流更连续,较高的值会使流更块状。

Post Smooth(后处理平滑)
作为后处理步骤,平滑地形上的泥土。

Water Absorption(吸水率)
根据最后一帧的 flow field 控制泥土的移动。较高的值会阻止泥土在 flow 通道附近移动,较低的值会让泥土忽略 flow 通道,从而独立地移动。

Max Height(最大高度)
由于吸水而无法移动的湿泥土的最大高度。超过这个高度时,泥土会再次开始移动。

Repose Angle(休止角度)
能让松散的固体物质保持在原位而不滑动的最大坡度(与水平方向的夹角)。

reposeanglemaskmode(休止角度是否启用mask)
是否使用mask来控制休止角度

Repose Angle Mask(休止角度mask)
用于控制休止角度的mask

3. Bedrock(基岩)

Bedrock Override(重写基岩)
基岩层的每一帧模拟都将替换为该层(从节点的第二个输入中读取)。如果不存在,则不进行替换。

Adjust Height by Bedrock Change(通过基岩变化调整高度)
基岩变化时,也调整地形高度。这允许构建一个动态增长的山(从节点的第二个输入中读取),在发生侵蚀时每帧添加新的净高度。

3.1 Strata(地层)

Adjust Erodability by Strata(按地层调整可蚀性)
根据与“基岩参考层”的距离调整岩石的可侵蚀度。

Strata Depth(地层深度)
地层的深度。Strata Erodability 曲线参数使用这个深度来控制它所代表的深度。正值表示地层代表基岩层以下(的硬度?)。负值表示地层代表基岩层以上(的硬度?)。

Clamp at Strata Bounds(在地层边界Clamp )
地层范围之外的深度将被Clamp在曲线的末端。如果关闭Clamp,表示重复周期。

Strata Erodability(地层可蚀性)
不同地层深度的岩石可侵蚀性如何。曲线最左端是“基岩参考层”,最右端是 Strata Depth 深度。值为 1 表示完全可侵蚀,比如松散的泥土,值为 0 表示无法侵蚀,比如花岗岩。

4. Layers(层)

通常,这些层会从零开始生成。但如果节点包含一些层,你也可以使用这个分页中的一些参数进行设置。

Remove Debris Layer from Input Height Layer(从输入的高度层移除泥土层)
如果输入已经有泥土层(例如来自先前的侵蚀节点,或手动绘制),将其保留为泥土但在此节点的侵蚀计算中忽略它。

Remove Water Layer from Input Height Layer(从输入高度层移除水层)
如果输入已经有水层(例如来自先前的侵蚀节点,或手动绘制),将其保留为水,但在此节点的侵蚀计算中忽略它。

Reset Water Layer(重置水层)
如果输入已经有一个水层,删除它。

Reset Debris Layer(重置碎片层)
如果输入已经有泥土层,请将其删除。

Reset Sediment Layer(重置沉积层)
如果输入已经有沉积层,则将其删除。

Add Debris Layer to Final Height Layer(将泥土层添加到最终高度层)
使用泥土层中的值添加到高度层。如果您打算以其他方式表示泥土层,例如单独着色的volume或实例化的岩石几何体,则可以关闭此参数。

Add Water Layer to Final Height Layer(将水层添加到最终高度层)
使用水面高度层中的值添加到高度图层。默认关闭。这会将水位“烘焙”到高度值中,比如,汇集的水将变成平坦的地形。如果您只想要一个非常简单的输出,比如只需使用纯色为“水”区域着色,那可以打开这个参数。

5. Layer Bindings(层的绑定)

此分页上的参数可让您更改节点查找/创建的层的默认名称。

Height Layer(高度层)
要操作的高度层的名称,通常为height.

Water Layer(水层)
包含水面高度的层的名称(默认值water)。

Material Layer(物质层/泥土层)
包含泥土高度的层的名称(默认值debris)。

Sediment Layer(沉积层)
包含沉积物高度的层的名称(默认值sediment)。

Bedrock Layer(基岩层)
用于确定当前高度侵蚀程度的参考层。如果输入中不存在,则它被设置为地形的原始高度。

Flow Layer(流动层)
该节点输出的flow表示累积的水流量的层。该层有两个带符号的分量(x 和 y),表示体素空间中的流动方向。因为这是累积的,所以如果水向左流动,然后向右流动,那么这两个运动将抵消并且 x 分量将为 0。

Flow Dir Layer(流向层)
该节点输出一个flowdir包含向量的层,该向量表示每个体素的平均流动方向。

6. Simulation(模拟)

Start Frame(起始帧)
节点直到这一帧才开始模拟侵蚀。默认为1(第一帧)。

Cache Simulation(缓存模拟)
在内存中缓存完成模拟的帧,可交互式的清理。对于非常大的侵蚀,最好关闭此选项来节省内存。

Allow Caching To Disk(允许缓存到磁盘)
当 Cache Simulation 打开并且此选项打开时,模拟将在达到 Cache memory 时开始将帧缓存到磁盘。磁盘上的帧加载速度比内存中的帧慢,但仍比重新模拟快。如果此选项关闭且模拟达到限制时,它就会从缓存中删除最旧的帧。

Cache Memory (缓存的内存)
用于缓存模拟帧的最大内存量(以MB为单位)。

7. Visualization(可视化)

此分页包含用于可视化高度和其他层的选项。这些选项与 Height Field Visualize 节点上的一样。

附录:

Grid Bias 的实验

1.0时:
在这里插入图片描述
-1时:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u013412391/article/details/129780504