
Overview
Project
- OpenGL rendering + physics demo
- Made for second year graphics programming assignment
- Individual project
- 92% grade
Features
- Blinn-Phong shading
- Deferred rendering
- Rigid body physics
- Shadow mapping
- Colour, normal and specular textures
- Particle systems
- Post processing
Tech
- C++
- OpenGL 4.3/GLSL
- SDL 2, glew
Written in C++ using SDL for window and input management, it happily runs at 60Hz with a relatively high number of polygons, particles, lights and textures, on a medium/high spec PC. It uses limited rigid body simulation (rotations/torque are not simulated) with plane, sphere and AABB collider support. All code is my own except these dependencies: SDL (window and input), Glew (OpenGL binds), GLM (vector and matrix types), SOIL (PNG/TGA texture support) and Tiny Obj Loader (model loading).

Here's a recording of it in action: