OpenGL Graphics Programming
REAL-TIME RENDERING & SHADER PROGRAMMING
Exploring the fundamentals of real-time computer graphics through two interactive 3D scenes

OpenGL

Two 3D Scenes
Indoor & Outdoor Rendering
3D Graphics Programming
PROJECT OVERVIEW
OpenGL Graphics Programming is a collection of two academic 3D rendering projects developed as part of the 3D Graphics Programming module at Kingston University. The projects explore real-time rendering techniques through two distinct environments: an indoor scene focused on lighting and materials, and an outdoor scene featuring terrain, water, particle effects, and animated characters.
Both scenes were developed as individual programming assignments, progressively introducing more advanced graphics techniques. The indoor project explores multiple light sources and per-fragment lighting, while the outdoor project expands into normal mapping, multi-texturing, water rendering, atmospheric effects, and rigged character animation.
The main objective was to understand and implement fundamental computer graphics techniques using OpenGL and custom shaders. This included lighting calculations, material rendering, surface detail through normal maps, water reflection and refraction effects, particle systems, and basic character animation integration.
• The Project
• Development
• Technical Focus
CONTRIBUTION
Particles & Animation
-
GPU-Animated Particles
-
Lifetime & Transparency
-
Rigged Charecter Anim.
-
Camera Follow System
Terrain & Materials
-
Heightmap-Based Terrain
-
Normal Mapping
-
Multi-Texturing
-
Texture Blending
Lighting & Shading
-
Ambient & Directional Light
-
Per-Fragment Point Light
-
Specular Highlights
-
Spotlight Attenuation
Water & Atmospheric FX
-
Procedural Water Animation
-
Vertex Displacement & Normals
-
Fresnel Reflectance (Schlick)
-
Underwater Mist
HIGHLIGHTS













