Large-scale Shallow Water Control
Summary
The research area of water simulation control is focused on controlling the flow of
computer-generated water. Current studies in this area are heavily skewed towards
off-line applications. While there are studies that achieve control in real-time, in practice
this is limited to small-scale scenarios. This thesis presents a simple technique to
control shallow water simulations on a large scale in real-time.
The water control technique presented by this thesis works on any type of water
simulation that stores its properties in a grid-based format. The technique is based on
splitting the low and high frequency components of the water state through convolution
with a low-pass filter. Additionally, to maintain existing water flow details, control is
applied in a weak form by linearly interpolating the current water state with a target
state.
We show that the technique produces similar results to an uncontrolled water simulation
that is based on the same input. Furthermore, we show that important small-scale
wave details of the water simulation are maintained for an extended period of time, while
large-scale interruptions are quickly dealt with. Performance of the technique relies on
the size of the grid, but is real-time when running on a single CPU for a typical flooding
scenario of 128 by 128 cells.