A classic Tetris game built using the Cinder C++ creative coding framework, with audio synthesis using Cinder's native audio API.
- 7 Tetromino shapes: I, O, T, S, Z, J, L
- Next piece preview: Shows upcoming piece
- Scoring system: Points based on lines cleared (100/300/500/800 × level)
- Levels: Speed increases every 10 lines cleared
- Sound effects using Cinder audio:
- Background music loop
- Rotation sound
- Piece placement sound
- Line clear sound (ascending tones)
- Game over sound (descending tones)
| Key | Action |
|---|---|
| Arrow Left / A | Move left |
| Arrow Right / D | Move right |
| Arrow Down / S | Soft drop |
| Arrow Up / W | Rotate |
| Space | Hard drop |
| P | Pause |
| Escape | Quit |
| Space (on game over) | Restart |
- Windows 10+
- Visual Studio 2022
- CMake 3.16+
cd TetrisGame
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
cmake --build . --config DebugTetrisGame/
├── src/
│ └── TetrisGame.cpp # Main game source
├── CMakeLists.txt # CMake build configuration
└── README.md # This file
Uses Cinder's native audio API (cinder/audio/audio.h):
audio::Context::master()- Audio contextaudio::GenSineNode- Sine wave generator for tonesaudio::GainNode- Volume controlContext::makeNode()- Create audio nodes
All sounds are synthesized procedurally - no audio files needed.
MIT License
