Skip to content

A Real-Time Ocean Simulation Engine written in Java that uses OpenGL and OpenCL. ๐ŸŒŠ

Notifications You must be signed in to change notification settings

MarkasAis/artose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

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

About

A Real-Time Ocean Simulation Engine written in Java that uses OpenGL and OpenCL. ๐ŸŒŠ

Topics

Resources

Stars

Watchers

Forks

Languages