An implementation of the classic game Tetris using SDL and OpenGL.
The project is organized in two distintic parts.
Abstracts platform details (window, input, logging), providing a basic framework with lifecycle hooks for the client application. Additionally, some wrapper classes for OpenGL resources are provided like Shaders, GPU Buffers or Textures.
The Tetris game application implemented used the system utilities. For rendering, batching and instancing are used to reduce the number of draw calls.