Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Geometry object for 3ds Max implementing the iWave ocean water simulation method.
branch: master


Updated install directions
latest commit 110196c3d7
Steven Dao authored

Check out an example on Vimeo!

iWave Ocean Simulation Plugin

This plugin for Autodesk 3ds Max simulates both ambient waves and dynamic, collision-driven waves. To install it after compiling, simply copy the output iWaveOcean.dlo file to your 3ds Max plugins folder (for 3ds Max 2014, this should be C:\Program Files\Autodesk\3ds Max 2014\plugins), and copy the included libfftw3f-3.dll library to your 3ds Max application folder (e.g. C:\Program Files\Autodesk\3ds Max 2014). The plugin will appear in the Command Panel > Simulations category > iWaveOcean.


Copyright (C) 2013 by Steven Dao

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see [].

For more information, please see the LICENSE file included with the source code.


This plugin is designed to work with the Autodesk 3ds Max 2014 SDK or later. This SDK version requires that you have the Microsoft Visual Studio 2010 build tools installed. However, you can still use later versions of Visual Studio, such as VS 2012, to edit the project so long as you have the 2010 build tools on your system. Note that, in most cases, you cannot debug the plugin from VS using the "Debug" configuration, since you probably don't have the debug symbols for 3dsmax.exe. You will have to use the Hybrid configuration to load the debugger only for the plugin's code and not for Max.


The iWave plugin uses FFTW in order to simulate ambient waves using Tessendorf's FFT-based method. The FFTW binary DLLs are included in the src/fftw-3.3.3-dll64 folder.

The plugin uses algorithms published by Jerry Tessendorf, chief amongst which are the FFT method for simulating ambient waves and the iWave method for dynamical waves. The papers and course notes explaining these algorithms are available in the notes folder, or you can visit Tessendorf's website.

Known Issues

Please see the bug tracker for this project.

Something went wrong with that request. Please try again.