Table of Contents
This project demonstrates interactive Blinn–Phong lighting in OpenGL, featuring real-time ImGui controls for lighting parameters, material properties, and model selection.
It provides a fully dependency-free experience — all required headers and libraries are already integrated.
- Pure C++ + OpenGL implementation — no external installations required
- ImGui-powered controls for real-time tweaking of light color, position, and shininess
- WASD-controlled light movement to observe reflections from multiple angles
- Multiple imported Blender models (Castle, House, etc.) for lighting visualization
- Organized CMake-based build system
- Clean structure for extension into advanced shading models
This project is now completely dependency-free — all the required third-party libraries (GLFW, GLAD, GLM, stb_image, Assimp, ImGui) are already configured in the repository.
You just need to build and run the executable.
- Clone the repository
git clone https://github.com/Jasz-rgb/Blinnphong.git
- Build the Project
mkdir build && cd build cmake .. make
- Run the script
./Blinnphong
Once the project is running:
- Use WASD keys to move the light source in 3D space.
- Use the ImGui panel to:
- Switch between lighting types (directional, point, or spot).
- Modify ambient, diffuse, and specular intensity.
- Change light color and shininess values.
- Load different 3D models dynamically.
- Observe how the Blinn–Phong lighting model affects different surfaces and materials.
The currently active maintainer(s) of this project.
Honoring the original creator(s) and ideator(s) of this project.