Skip to content

C++ OpenGL application for loading and manipulating 3D models (.obj) with real-time transformations using keyboard controls. Features shader-based rendering pipeline with GLM matrix operations. Tech Stack: C++, CMake OpenGL, GLFW, GLM, TinyObjLoader

Notifications You must be signed in to change notification settings

embdevv/CMake-GDGRAP1

Repository files navigation

CMake-GDGRAP1

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.

Purpose

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

Important Notice ⚠️

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.

Tech Stack

  • C++ - Core programming language
  • CMake - Build system
  • OpenGL - Graphics API
  • GLFW - Window and input handling
  • GLM - Mathematics library for transformations
  • TinyObjLoader - .obj file parsing

About

C++ OpenGL application for loading and manipulating 3D models (.obj) with real-time transformations using keyboard controls. Features shader-based rendering pipeline with GLM matrix operations. Tech Stack: C++, CMake OpenGL, GLFW, GLM, TinyObjLoader

Topics

Resources

Stars

Watchers

Forks

Languages