
3ds Max 里做水面涟漪,几十年来的标准答案是那个叫 Ripple 的修改器。它工作方式是:给一个 gizmo,拉半径、设波长、设振幅,平面上就出现一圈圈同心圆。
这个工具能用,但它的问题也很明确:它只有正弦波。真实的水面不是这样的——真实的水有边缘反射、有物体划过留下的尾迹、有雨滴砸出来的水花、有波与波之间的干涉、有能量随时间衰减。这些它一个都不做。
想做出真实水面,传统做法是上流体模拟(RealFlow、Phoenix FD、Bifrost 之类),成本高、设置复杂、渲染慢,做一条小水沟要开一整套流体系统。
Ripple Pro 的定位就在这两者之间。官方页开场原话是(原文):
The stock 3ds Max Ripple modifier hasn’t changed in decades — a single sine wave on a flat plane.
Ripple Pro is a ground-up replacement: a complete ripple, wake, and rain toolkit.
二、两种模式:一个开关切换
这是整个插件的核心结构,官方把它写成一个小标题「Two modes, one modifier」:
Pattern 模式(程序化,确定性)
快速的、确定性的程序化涟漪。官方原话:「Every frame looks the same every time you scrub to it, so it’s ideal for clean, controllable, art-directed water and motion-graphics looks.」
翻成中文:每次拖动时间轴回到同一帧,画面完全一样,所以适合干净、可控、可艺术指导的水面与动态图形效果。这个模式最接近 3ds Max 自带的那个 Ripple 修改器,但功能多得多。
确定性意味着可渲染、可复现:动画的每一帧都是算出来的,不会因为模拟状态飘移而变化。做广告片、做动态图形、需要精确控制波峰位置的场景,用这个。
Simulation 模式(波动方程高度场求解)
官方原话:「Simulation mode is a height-field solver built on the wave equation. Disturbances travel across the surface, interfere with each other, reflect off edges, and lose energy and settle over time. That’s what produces wakes, rain interaction, and ripples that respond to motion — at a fraction of the cost and setup of a full 3D fluid sim.」
翻成中文:Simulation 模式是一个基于波动方程的高度场求解器。扰动在表面上传播、互相干涉、从边缘反射、随时间失去能量并沉降下来。这样才能产生尾迹、雨滴交互、以及会对运动作出反应的涟漪——而成本与设置量只有完整 3D 流体模拟的一小部分。
这就是物理正确的部分:波真的会传播、会干涉、会反弹、会衰减。物体在水面上移动会推出一道尾迹(wake),船走过之后水面会自己平复。
官方说「You switch between them with a single toggle, and most features work in both.」——一个开关切换,大部分功能两种模式都支持。但要注意「most」:雨滴的完整水花效果只在 Simulation 模式里有,因为那需要真实的撞击响应。
三、涟漪可以由五种东西驱动
这是 Ripple Pro 最实用的部分。原生的 Ripple 只能从一个 gizmo 发出同心圆,Ripple Pro 让你指定谁是涟漪的来源:
Point(点)——径向涟漪,而且官方特别说明它「now able to travel correctly across curved surfaces like spheres and terrain, not just flat planes」,能在球面、地形这类曲面上正确传播,不只是平面。原生 Ripple 在曲面上是错的。
Mesh(网格水面线)——用它跟水面相交的那条线作为涟漪源。官方原话「uses an object’s waterline (where it meets the surface), so a boat, a duck, or any shape ripples from its actual outline instead of a circle」——用物体的水线(它与水面相交的地方),所以船、鸭子、任何形状都是从它真实的外轮廓发出涟漪,而不是一个圆圈。做船在水上开,这个模式是正解。
Spline(样条)——用开放或闭合样条当涟漪源,做艺术指导的波形与控制好的波前。想让涟漪沿着一条画好的曲线走,用这个。
Particles(粒子)——每个粒子撞击都产生一次水花。官方写「Works with PFlow, tyFlow and other particle systems, and impacts register on any surface shape, flat or curved, automatically」——支持 PFlow、tyFlow 以及其他粒子系统,撞击在任意形状的表面上都自动生效,平的弯的都行。下雨场景直接挂这个。
Texture / image(贴图)——用一张图驱动涟漪:位图、程序化贴图、OSL、动画序列都行。官方说「The shapes in the image emit the ripples, and in Simulation mode moving artwork produces directional wakes that follow the motion」——图里的形状发出涟漪,而在 Simulation 模式里移动的画面会产生跟随运动方向的尾迹。这条很妙:拿一段动态图形当涟漪源,能得到很风格化的效果。
可以同时用多个几何源,它们都往同一个表面上贡献涟漪。官方原话「You can use multiple geometry sources at once — they all contribute to the same surface.」
四、几个决定质感的技术点
UV 模式——把涟漪走 UV 空间而不是世界空间,波就会顺着表面的走向走,绕过弯曲与有机形状。「It’s the difference between ripples that cut straight through a bent or rolled mesh and ripples that travel along it.」——区别在于涟漪是直愣愣地穿过一个弯折或卷起来的网格,还是顺着它走。另有一个 UV-blend 选项处理接缝撕裂。
边缘检测——Ripple Pro 能读网格的边界,涟漪从边缘发出并从边缘反弹回来。「so a pond, a river, or any contained surface reads as having banks. No collision objects to model; the shape of your mesh does the work.」——所以池塘、河流、任何有边界的表面看起来都有岸。不用建碰撞体,网格的形状自己完成这件事。这条很省事:以前做水池要在周围摆一圈碰撞对象,现在只要网格有边界就行。
波形与细节——波形可选 Sine、Gerstner、Trochoidal、Square、Saw,还有自定义曲线;Choppiness 让波峰更尖锐并带水平位移(这是真实海浪的特征);FBM 细节层(octaves / persistence / lacunarity)做多尺度表面变化;Distort 是程序化扭曲,把完美的数学圆圈打散成不规则的有机形状,两种模式都能用。
雨滴与水花——Simulation 模式下粒子源砸到表面的每一滴都有程序化水花:落地时的 crown ring(冠状环)、中心的 rebound jet(回弹水柱)、沉降时的 soft landing ring(柔和落定环),以及可选的 pinch-off beads(从水柱上甩出去的真实水珠几何体)。每一项都能按滴调:水花高度、半径、时序、珠子大小,还有一个 variation 参数把每次撞击的高度、大小、寿命一起随机化,这样撞击不会重复。官方强调「It works on any surface shape, at any angle, with no setup」——任意形状的表面、任意角度、无需设置。
模拟参数——Viscosity(黏度)、Spring(回弹刚度)、Decay(衰减)、Time Scale(时间缩放)、Wake Calm(尾迹平复速度)、Bow Wake(船首波)。物体的移动、旋转、甚至变形或蒙皮几何体都能产生尾迹——一个走路的角色会在水面上带出船首波。场景物体还能当障碍物,让波从上面反射。还有一个「float on surface」选项:让物体浮在表面上,只从它移动的边缘产生涟漪,而不是把它压出一个坑。
掩码——可以把涟漪限制在软选择范围里,或者限制在修改器堆栈传上来的选择里,只对网格的一部分生效。
生产性能——多线程(Intel TBB,官方注明效果取决于 CPU、设置与源类型)、RAM 帧缓存(播一遍之后拖动或重播都是即时的)、渲染运动模糊(跨快门做亚帧的表面运动,不是每帧一张静帧)。官方还有一句「Animates without keyframes — set it up and play」——不用打关键帧,设置好直接播。
五、安装与文件结构
这个包的结构很简单,解压出来是这样:
RipplePro-v1.0.0-3dsMax-2024-2027-iTooHelper/
├── 3ds Max 2024/RipplePro.dlm
├── 3ds Max 2025/RipplePro.dlm
├── 3ds Max 2026/RipplePro.dlm
├── 3ds Max 2027/RipplePro.dlm
└── Sample Scenes/
├── Rain.max
├── Wading.max
└── Noise Texture Ripples.max
装法:把对应你的 3ds Max 版本那一份 `RipplePro.dlm` 拷进 3ds Max 安装目录下的 `plugins` 文件夹(一般是 `C:Program FilesAutodesk3ds Max 20XXplugins`),重启 3ds Max 就出现在修改器列表里(Modifier List → 搜 Ripple)。
官方强调「a separate build for each version, drop-in install」——每个版本一份独立编译的 dlm,不要跨版本用。3ds Max 的 SDK 每个大版本都变,拿 2024 的 dlm 塞进 2027 大概率直接加载失败。
示例场景三个,正好对应三类用法:`Rain.max` 是粒子驱动的雨滴(示范水花那套);`Wading.max` 是有人在水里走(示范 bow wake 与尾迹);`Noise Texture Ripples.max` 是贴图驱动的风格化涟漪。第一次用建议直接开这三个看参数是怎么配的,比看文档快。
包内还带完整 HTML 用户手册(官方原文「A full HTML user guide ships with every download」)——3ds Max 插件里带完整手册的不多,这个算加分项。
六、授权与适合谁
授权:Gumroad 页列了四档——Individual(单艺术家)、Studio(5 席)、Studio(10 席)、Studio(site,站点授权)。按席位数递进,适合团队按工位买。页面 Vendor 写的是 All Angles Ltd,作者铺名 ldotchopz。
适合:
· 用 3ds Max 做建筑可视化、产品渲染的人——水池、景观水、雨景是常见需求,而这个插件比上流体模拟便宜太多。
· 做广告 / MV / 动态图形的人——Pattern 模式的确定性正合适,波峰位置可精确控制。
· 需要雨滴落在各种表面上(包括弯的、斜的)的人——粒子源那套自动生效,不用逐个设置。
· 已经有 tyFlow / PFlow 工作流的人——直接接上,每个粒子撞击都有水花。
不适合:
· 要做翻滚巨浪、瀑布、水花四溅的流体特效的人——官方自己说了这不是 FLIP 模拟器,那种活还是得 Phoenix FD / Bifrost。
· 用 Blender / C4D / Maya 的人——这是 .dlm,只能 3ds Max 用。
· 需要水面下折射、焦散那套完整水面着色的人——这个插件负责的是几何位移(高度场),材质与折射要靠渲染器自己配。
一个实测发现:Gumroad 页的评论区里有一条已验证买家的提问——「When using Sim mode, set to Texture, the driving texture ignores UVs, and just encompassing the entire plane corner-to-corner, like Object space. I don’t know how to change it to UV space.」说的是 Sim 模式下用贴图驱动时,贴图忽略 UV、按对象空间铺满整个平面。作者在页面上没有公开回复这条。如果你打算主要用「贴图驱动 + UV 模式」这个组合,可能要先自己试一下再决定。
原产品页:https://ldotchopz.gumroad.com/l/RipplePro
封面图片来自作者官方产品页。本文为中文整理,功能与兼容性信息以作者官方页面与包内说明为准。资源仅供学习交流,商业使用请购买正版授权。















暂无评论内容