NVIDIA WaveWorks

NVIDIA WaveWorks enables developers to deliver a cinematic-quality ocean simulation for interactive applications. The simulation runs in the frequency domain using a spectral wave dispersion model. An inverse FFT step then transforms to the spatial domain ready for rendering. The NVIDIA WaveWorks simulation is initialized and controlled by a simple C API and the results are accessed for rendering through a HLSL shader API. Parameterization is via intuitive real-world variables, such as wind speed and direction. These parameters can be used to tune the look of the sea surface for a wide variety of conditions - from gentle ripples to a heavy storm-tossed ocean based on the Beaufort scale.
Please contact us for Licensing inquiries.

Key Features
  • Tessendorf's spectral algorithm, based on Phillips spectrum
  • Multi-res simulation
  • Quad-tree tile-based LoDing
  • Host read-back
  • DX11 tessellation
  • Foam simulation
  • A "no graphics" path for clients (MMO servers)
Platforms PC, Steam OS, Linux, MacOS, PS4, XBOX1
Dependencies DX11
Engines UE4 (GitHub)

NVIDIA WaveWorks in Game/Demo Examples

Nvidia WaveWorks Demo

In this demo we show the simulation for different Beaufort scales ... from gentle ripples to a heavy storm-tossed ocean. In addition, we also show the energy-based surface foam simulation which is locked to and driven by the underlying spectral simulation.