A procedurally generated ocean simulation built using C++ and OpenGL. Made for CSC 471: Introduction to Computer Graphics with Dr. Zoë Wood.
For a full breakdown of the project, visit the project website
- A procedurally generated ocean surface and waves with sum-of-sines wave displacement
- Blinn-Phong lighting including cubemap reflections and the Fresnel effect
- Analytical surface normals for the ocean surface for accurate lighting
- A simple GameObject and Hierarchy abstraction for meshes, including support for simple buoyancy
- A flythrough camera for scene navigation
- The fundamentals of graphics programming, including lighting, texturing, hierarchical modeling, and animation
- Procedural generation and calculating analytical surface normals with partial derivatives
- Memory optimizations in C++ and OpenGL, including memory layouts and uniform buffer objects for shared GPU data
