H17全新白水whitewater系统解析(二)
文接上期。
▌whitewater节点网络解析
Whitewater Source(发射源):
水雾和泡沫由此产生,在这里蕴含许多重要的参数来控制白水的数量和分布。
➤Whitewater Source节点内的Curvature选项卡控制白浪的产生位置。你可以指定在哪个曲率(curvature)处发射白水以及Max Velocity Angle(最大速度角度)。
➤Whitewater Source节点内的Acceleration选项卡控制白水速度的变化。例如,当海浪撞到礁石改变运动方向。
➤Whitewater Source节点内的Vorticity选项卡控制水流“打转”的区域,或速度的卷曲。当水被搅动,气泡(bubbles)便会产生。通常用来模拟船只经过或是有物体在水中搅动。
Whitewater Sim(DOP模拟):
白水在这里进行模拟,你可以控制它们的各项参数。
➤Whitewater Objects代表白水物体。包含一些可视化参数,以及与碰撞体交互的一些参数。
➤Whitewater Solver即为白水解算器,你可以在这里控制白水粒子的各项指标。
➤Emission选项卡控制白水粒子的产生。可以在这里设置气泡、泡沫、水雾的老化速度(age rates),让粒子基于深度拥有不同的生命值。
➤在Limits选项卡中可以设置模拟的区域和边界。亦可以使solver读取SDF碰撞体积:如果你想让白水与其他物体做交互,使白水停留在物体上,这个参数非常重要。如果不设置SDF,白水粒子将无法正确计算碰撞。
➤Forces选项卡可以设置白水粒子的基本力场以及在不同深度的不同效果。例如,默认设置下,浮力(buoyancy)与重力相反并只作用于被水浸没的粒子。
➤Foam选项卡内包含更高级的白水动力学机制:
➤Clumping维持粒子密度,让白水粒子具有流体的形态。
➤Erosion可以维持白水粒子密度高的区域,并使少的区域更少。
➤Repellants用来生成“细胞”状的白水形态。
➤Adhesion可以避免白水与液体表面分离。
一般情况下,无需修改Advanced选项卡里面的参数。
Import Whitewater(从DOP中导入白水到SOP):
这个节点与其他无异,就是将解算好的白水从DOP中导出来进入到SOP层级,以便接下来的渲染或进一步的操作。
▌小提示
➤Whitewater Source节点内的Visualization选项卡可以控制显示curvature、acceleration、vorticity等。开启Source Particles后,设置Whitewater Scale和Emission Amount的值可以控制发射量(这两个参数与Whitewater解算器中对应的参数相关联)。
➤Whitewater解算器内的Whitewater Scale参数控制白水精度。使用较高的值来进行快速的模拟和预览,较低的值意味着更多的粒子和更丰富的细节。
➤将Whitewater解算器里的Aging Rates(老化速度)调高将增加粒子的死亡几率。例如,你想让泡沫附着的时间长一点并且不想要气泡,设置Bubbles Aging Rate一个较高的值,设置Foam Aging Rate一个较低的值。
➤防止白水粒子小区域积聚或过于分散,可以使用Whitewater解算器Foam选项卡里的Clumping参数。这将使粒子更具凝聚力。
➤使用解算器Foam选项卡里的Adhesion参数来让泡沫吸附在液体表面、防止渲染瑕疵。
➤使用解算器Foam选项卡里的Erosion参数可以让白水从外向内“侵蚀”并防止过度分散。
➤Repellants用来生成“细胞”状形态的白水,这些参数在解算器里的Foam选项卡中。Noise Range和Pulse Frequency Range控制repellant的形态。repellant具有较高的Pulse值将会更快的变形,较低的noise值会让白水呈现“圆形”的图案。
▌示例:如何基于wavetank创建一个whitewater?
这个小教程讲解如何在wavetank上创建白水,得到一个满意的形态。
- 在Ocean工具架上点Wave tank工具。
- 提高精度。在wavetank节点,将Particle Separation的值设为0.1或0.07。
- 回到OBJ层级,在Ocean工具架上点击Whitewater工具,然后进入到dop中选择wavetank节点并回车。
- 在Whitewater解算器中将Limits选项卡下的Closed Boundaries关闭防止粒子与边界框碰撞(Ctrl+Shift+左键解除关联)。
- 在Whitewater解算器中将Foam选项卡下的Feature Size Range设为0.1-0.2。这将产生更多细小的白水粒子(开启Whitewater Object节点内的Repellents可以直观地看到repellant粒子)。
- 进行模拟,预览效果。