Skip to content

Releases: embdevv/CMake-GDGRAP1

3D Object Transformation & Controls

22 Jan 04:51

Choose a tag to compare

Major Features

This release introduces full 3D transformation capabilities with interactive keyboard controls for manipulating 3D models in real-time.

What's New

3D Mathematics & Transformation System

  • Added GLM (OpenGL Mathematics) library integration for matrix operations
  • Implemented 3D transformation matrices supporting translation, rotation, and scaling
  • Real-time matrix calculations for smooth object manipulation

Shader Pipeline

  • Added vertex shader (sample.vert) for position transformations
  • Added fragment shader (sample.frag) for rendering
  • Shader program now receives transformation matrices via uniform

Interactive Controls

W - Move object up (Y+)
S - Move object down (Y-)
A - Move object left (X-)
D - Move object right (X+)

Q - Decrease object scale
E - Increase object scale

↑ (Up Arrow) - Rotate around X-axis (negative)
↓ (Down Arrow) - Rotate around X-axis (positive)
← (Left Arrow) - Rotate around Y-axis (negative)
→ (Right Arrow) - Rotate around Y-axis (positive)

ESC - Close application

Technical Changes

  • Transformation variables now initialized at global scope (position, scale, rotation)
  • Added axis vector control for rotation (x,y,z axis selection)
  • Matrix transformations applied in proper order: translate->scale->rotate
  • Shader uniforms properly set after program activation

Requirements: OpenGL 3.3+, GLFW, GLAD, TinyObjLoader, GLM
All included in .zip file below available for download.

What's Changed

New Contributors

Full Changelog: https://github.com/embdevv/CMake-GDGRAP1/commits/Release