Skip to content

Latest commit

 

History

History
26 lines (21 loc) · 1.43 KB

README.md

File metadata and controls

26 lines (21 loc) · 1.43 KB

Artose

Logo
A Real-Time Ocean Simulation Engine written in Java that uses OpenGL and OpenCL.

Description

This is an implementation of the Gerstner waves algorithm in Java that uses a renderer I wrote in OpenGL and OpenCL.

📚 Note

This project is meant for educational purposes. During the development I referenced the Crest Unity Addon in order to understand the Gerstner waves algorithm as well as the general graphics pipeline and it's optimization.

🖼️ Gallery

Day Scene

Day Scene

Golden Hour Scene

Golden Hour Scene

Night Scene

Night Scene

🛠️ Technical Details

  • Uses an OpenGL renderer
  • Uses OpenCL kernels to combine different wave frequencies into one texture
  • Implements a Level of Detail system
  • Has Sub Surface Scattering
  • The Ocean mesh follows the camera allowing for infinite Oceans
  • Currently only works on MacOS