fft water: the plan

7 Aug 2026

About a year ago I took a stab at reimplementing Tessendorf’s ocean water1. I got some decent results, but the implementation was sloppy and not particularly organized. I also never implemented Bruneton’s “geometry to BRDF” method 2, partially because the implementation was sloppy.

I’ve gotten the itch to take another stab at implementing this water system. This time, I will try harder to proceed along principled, logical steps, and check my work more thoroughly along the way.

I’ve also decided to document this process. I expect it to take a few months to complete this project. Hopefully in the future, these notes might help someone trying to implement some nice deep-ocean water in their engine/game/whatever.

I’ll implement this renderer as follows (this list is likely to change):

So… yeah. A lot of work. I’ll get started tomorrow!



  1. Tessendorf, Jerry. Simulating Ocean Water. 2004. PDF.↩︎

  2. Bruneton, Eric et. al. Real-time Realistic Ocean Lighting using Seamless Transitions from Geometry to BRDF. 2010. PDF.↩︎

back to main page