Whirlpools, drains, springs and currents
An authoring kit for hydraulics: drop a Force actor set to Vortex over a lake and the water genuinely rotates around it. Sources feed water in, drains empty it, currents push boats downstream.
Included in Oceanology Pro and Riverology 3.
Hydraulic features you place and tune in the details panel instead of writing a Blueprint that fires an impulse every tick. Three typed components, Source, Force and Wave, each with a matching placeable actor, describe a persistent contribution to a shallow water simulation: how much water enters or leaves, which way it is pushed, and what shape the surface should be driven toward. None of them tick. A world coordinator gathers them on the solver's own cadence, so a hundred placed features cost nothing per rendered frame.
The three lanes
- Source moves water mass. Add Water Depth is a spring or an inflow; Remove Water Depth is a drain or a leak; Relax To Rest Surface holds a level, converging on the authored rest surface plus an offset rather than accumulating. Added water carries the momentum you author through Injected Velocity, and removing water removes foam in the same proportion as mass, so a drain does not leave a foam stain hanging over nothing.
- Force moves momentum. Directional is a current. Radial pushes outward for a positive acceleration and inward for a negative one. Vortex is the whirlpool, rotating counter-clockwise for a positive acceleration. Target Velocity converges the water toward a chosen velocity at a chosen response rate instead of accelerating it forever, which is what you want for a channel that should settle at a speed.
- Wave drives a bounded analytic target surface from a direction, amplitude, wavelength, frequency, phase and response rate, either continuously or as a one-shot pulse. Because it targets a surface rather than adding height, repeating it cannot pile up.
How they reach the water
Each contributor resolves exactly one target simulation: automatically from its own location, or explicitly by water body, water zone or simulation actor. The coordinator builds one immutable, deterministic snapshot per solver dispatch and then advances lifetimes only for the records that were actually accepted into it. That distinction matters for timing. Duration counts simulated seconds this contributor genuinely influenced, never wall clock, so a timed feature does not burn its life during a load hitch, while the game is paused, or while an editor preview is stopped, and slow motion stretches it correctly instead of desynchronising it. Continuous entries are re-evaluated on every numerical substep; one-shot entries are applied during the first substep only and acknowledged by event sequence, so nudging the actor in the editor cannot re-fire them.
Shape, orientation and order
Footprints are an ellipse, a box, or the entire simulation, oriented by the component's own yaw, with half extents in centimeters and a world-space edge feather. Sort priority decides evaluation order, which genuinely matters now that the operations are not all commutative, and stable identity breaks ties so the same scene produces the same result frame after frame.
Recipes
- Whirlpool: a Force in Vortex mode over an ellipse. Pair it with a Source in Remove Water Depth mode at the same center and it drains while it spins.
- Drain or sinkhole: a Source in Remove Water Depth mode. Depth rate is centimeters of column per second, so it is a flow rate you can reason about, not a magic hole.
- Spring, spout or outflow pipe: a Source in Add Water Depth mode with an injected velocity, so the new water arrives already moving in the pipe's direction.
- Current, millrace or tidal race: a Force in Directional or Target Velocity mode with a box footprint aligned to the channel.
- Weir or held pool: a Source in Relax To Rest Surface mode with a positive or negative offset. It settles on a level and stays there, and the water returns on its own when you disable it.
- Ship wash, explosion swell or a scripted surge: a Wave in One Shot Pulse mode, re-armed from Blueprint with Restart Contributor.
| Feature | Oceanology NextGen | Oceanology Pro |
|---|---|---|
| Available in NextGen | Nothing comparable. With no fluid solver in the plugin there was no hydraulic state to contribute to | A typed contributor system layered on the native shallow water solver |
| Component model | The legacy Water Modifier: one untyped disturbance with radius, axis ratio, height offset, flow velocity, swirl and foam | Three typed components whose mode is the operation, each with its own GPU payload and budget |
| Repeating a sustained feature | Additive submission every tick, so amplitude pulsed with tick rate and drifted with frame rate | Modes that converge: relax to a level, target a velocity, drive a wave surface. Re-submission settles on a shape instead of accumulating |
| Budget | Shared the solver's 16 impulse slots with automatic wakes and gameplay hits | Independent per-type budgets of 32 sources, 32 forces and 32 waves per simulation, leaving the impulse slots free for gameplay |
| Targeting | Whichever simulation happened to contain the modifier | Automatic at location, or pinned explicitly to a water body, a water zone or a named simulation actor |
| Types | Source, Force and Wave, as components or as placeable Oceanology Shallow Water Source, Force and Wave actors |
|---|---|
| Source modes | Add Water Depth, Remove Water Depth, Relax To Rest Surface |
| Force modes | Directional, Radial, Vortex, Target Velocity |
| Wave modes | Continuous, One Shot Pulse |
| Footprint | Ellipse, Box or Full Simulation; half extents default 300 by 300 cm; edge softness default 50 cm |
| Source defaults | Depth rate 50 cm/s, relaxation rate 4 per second, injected velocity in cm/s, normalized foam rate per simulated second |
| Force defaults | Acceleration 100 cm/s^2, target velocity response 4 per second |
| Wave defaults | Amplitude 25 cm, wavelength 600 cm, 1 Hz, response rate 4 per second |
| Lifetime | Negative runs forever, positive is that many simulated seconds, exactly zero fires a single one-shot |
| Per-simulation budget | Up to 32 sources, 32 forces and 32 waves, each continuous entry evaluated on every numerical substep |
| Ordering | Sort priority first, stable identity as the tie-break |