Authors: Jiashuo Li, Xie He, Ting Gong
This is a real-time ocean surface simulation and rendering program. The ocean waves are simulated using a statistical model based on oceanographical research, and are rendered using OpenGL Shading Language (GLSL). This is a course project for Fall 2015 CSCI-580 "3D Graphics and Rendering" at USC.
This program was written in C++ and GLSL.
This program was developed using Visual Studio. You should use Visual Studio if you want to compile it.
Our OpenGL framework is based on Learn OpenGL. And the following libraries are used in this program:
GLFW
for window management;GLEW
for GLSL;FFTW
for Fast Fourier Transform (FFT) in statistical ocean wave modeling;SOIL
for screen capturing;FFmpeg
for converting screenshots to video.
You can see our project report for detailed explanation of the algorithms of our project.
The ocean wave simulation algorithm we referred to is also described in Simulating Ocean Water.
We made two videos for a wavy surface and a calm surface with N = M = 1024.
Here are some screenshots: