We’ve just released version 1.0 of the Triton Ocean
at www.sundog-soft.com. Triton integrates
with OpenGL, DirectX9, or DirectX11 based engines to provide real-time
simulations of oceans and large bodies of water. It maintains high
framerates - hundreds per second on modern hardware - by automatically
detecting the GPGPU capabilities of the system and adapting to it.
Triton ships with the ability to take advantage of CUDA, OpenCL,
DirectX11 Compute Shaders (DirectCompute,) as well as multi-core CPU
technologies such as the Intel Integrated Performance Primitives and
OpenMP. By integrating GPGPU API’s with Triton’s vertex and fragment
shaders, the entire simulation of thousands of waves at once can take
place on the GPU from setting up the waves in the frequency domain,
conducting the inverse fast Fourier transforms, and applying this data
to a projected grid and applying a full Fresnel refraction and
reflection shader to the final output, with foam effects.
In addition to the FFT-based ocean simulation, Triton also offers a
simpler sum-of-Gerstner-waves mode that’s appropriate for shallower
water simulations. It also allows the user to pass in an environmental
cube map for more accurate water reflections.
Triton’s tailored for serious game applications as well, and is able to
take any given wind conditions or Beaufort scale and produce matching
water visuals automatically.
Maintaining system compatibility was one of the biggest challenges
during the development of Triton; GPGPU API’s are still young, and much
care had to be taken when selecting the API best suited to the user’s
system. Integrations between the GPGPU and OpenGL / DirectX API’s were
particularly challenging. We avoided runtime DLL errors by encapsulating
our GPGPU code within DLL’s of their own, and dynamically loading them
only after verifying that their DLL dependencies are present on the
This is Triton’s initial release, and we’re definitely interested in
constructive feedback! A demo,
free evaluation SDK, and
are available from our website.
Please log in or register to post a reply.
Awesome work Frank. With just 500K triangles, the results are great
looking. Your lighting based on the time of day feels fairly realistic
too, especially at night time with a (presumably) bright moon. How long
did you spend on this? Do you (or will you) take advantage of DX11
hardware tessellation to push it even further?
I can see something like this being used outside of the game industry.
Real time water rendering is useful in video production.
Really stunning work! Do you have videos?
The license fees seem really fair/low compared to a lot of other
Also, I noticed a typo on your licensing page (librarys should be
Royalty-free licenses for a single application are available at an
introductory price of $995 USD for binary-only Triton librarys, or
$1,495 USD for an SDK including Triton’s full source code.
Purchase a license >>
Thank you for catching that typo! It’s fixed now. We appreciate the
feedback. TheNut: Triton was about a 6 month project, although the sky
and clouds are powered by our other library, SilverLining, which has
been evolving since 2006. It takes advantage of DX11 Compute Shaders
when using the DX11 renderer, but hardware tesselation isn’t really
needed with the projected grid approach currently being used. As we
expand it to work well for smaller bodies of water, we may end up going
into geometry shaders / hardware tesselation though.
No videos yet, but watch for them on our website soon. Meanwhile
installing the demo application from our website can let you see it in