Rendering ocean waves in 3D

There’s an old post on the Gamasutra website that describes a Fourier-based algorithm for generating wind-driven waves in deep water. I wrote a little program to generate water displacement maps based on this algorithm and tried it out in Blender. Here’s the result:

Pretty realistic, huh?

It ought to be reasonably simple to implement this algorithm as a texture shader right inside Blender itself. But I still have a lot to learn about how to work the front end of Blender before I start messing around with Python scripts.

In the meantime, you can download the data I used to make the animation shown above. Once unpacked, you should find a set of 256 PNG files that can be imported as a displacement map or bump map in Blender (or any half-decent 3D software for that matter). The images should tile perfectly, and can be looped on the time axis too.

If you find them useful, a link back here would be appreciated.

Tagged with: , ,
One comment on “Rendering ocean waves in 3D
  1. Robinson says:

    Drive-by compliment: wonderful! Great work.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Please enter the missing number: *