Water, Water, Everywhere And All Of It Computer Generated
Written by David Conrad   
Saturday, 11 August 2018

It's Siggraph just around the corner and there will be videos to watch. This one is of water waves that not only wave about but interact with solid objects in realistic ways, and all in realtime. Bring your sea sickness tablets for the section at around 1 minute in.

The speed that graphics is evolving is amazing, even if we have grown accustomed to it. It is partly the result of the improvements in hardware where the slowdown in CPU performance hasn't halted the progress of ever-increasing parallelism and it is partly due to the development of algorithms that take advantage of this hardware. This particular breakthrough is more about software than it is hardware, but it does rely on some powerful NVIDIA GPUs.

watersim

Modelling water waves has long been a problem because accurate physical simulation is computationally expensive.  Fourier based methods are less demanding and give you the water movement, but they cannot model water/solids interactions.

The new method uses a Fourier-like decomposition into waves, but instead of sine waves it uses Gabor waves which are sine waves modulated by a Gaussian. This can also be thought of as breaking the wave motion down into a number of Gaussian wave packets which propagate though space. The Gabor transformation is used to derive a set of finite difference equations which in turn are used for the realtime simulation.

Because a wave packet is localized - sine waves are not - the method also allows the waves to interact with physical bodies like floating barrels or boats. It is also possible to give the water specific flow directions in the same sort of way. The team implemented a "wave painter" to let artists design wavy worlds of their own.

Now you have some of the theory - the rest is in the paper - take a look at the results, and remember the warning about seasickness at about 1 minute in:

 Here are some additional experiments:

 The final word goes to the authors of the paper:

"Our current implementation uses the deep water dispersion relation. In the future, we would like to extend this work to handle a more general depth-dependent dispersion relation, which should create additional refractive effects near shallow water. Overall, we believe that our approach of simulating spatially dependent amplitudes presents an interesting twist on water wave simulation. This new direction introduces unique challenges, like increased dimensionality and an interesting link between phase and resolution. At the same time, it makes significant progress on outstanding problems in the field of physics-based animation: it introduces novel methods for artistic control, it permits extremely large simulation domains, and it enables interactive animations with fine spatial resolutions."

 watersimicon

More Information

Water Surface Wavelets by Stefan Jeschke, Tomáš Skřivan, Matthias Müller-Fischer, Nuttapong Chentanez, Miles Macklin, Chris Wojtan, Institute of Science and Technology Austria (IST Austria) and NVIDIA.

Related Articles

Water In WebGL - One You Have To See

Realtime Fluid Flow - Wow!

Interactive Fluid Simulation in WebGL

The sands of time - simulated

OpenGL 3D fluid simulation (video)

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


It Matters What Language AI Thinks In
23/10/2024

We are currently polarized in how we think about Large Language Models. Some say that they are just overgrown autocompletes and some say that they have captured some aspects of intelligence. How well  [ ... ]



Apollo Adds REST APIs For GraphQL
29/10/2024

Apollo has added a simpler way to integrate REST APIs into a federated GraphQL environment. Available now in public preview, can be used to map REST API endpoints to their GraphQL schema using a decla [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Saturday, 11 August 2018 )