This repository demonstrates a C++ OpenGL application for loading and manipulating 3D models (.obj format) with real-time transformations using keyboard controls. Features a shader-based rendering pipeline with GLM matrix operations for translation, rotation, and scaling.
This project is intended for educational purposes ONLY to demonstrate:
- OpenGL rendering pipeline implementation
- Shader programming (vertex & fragment shaders)
- 3D transformation matrices using GLM
- Keyboard input handling with GLFW
- Loading and rendering .obj models with TinyObjLoader
Do NOT copy/replicate this code directly as this project is being used currently for university. This repository is meant to help you understand the concepts line by line. Take time to comprehend how each component works—from shader compilation to matrix transformations—and implement your own version based on your understanding.
- C++ - Core programming language
- CMake - Build system
- OpenGL - Graphics API
- GLFW - Window and input handling
- GLM - Mathematics library for transformations
- TinyObjLoader - .obj file parsing