Skip to content

candrewlee14/tetris-raylib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tetris-Raylib

I made for this for Coding Challenges's Tetris challenge.

I wanted to try hot reloading in C through recompiling & reloading the core game logic as a shared library. Being a big Zig fan, I decided to use Zig's build system to enable doing this in debug mode, but compile it all statically in release modes. If you hit the 'R' key in-game in a debug build, the game will reload but the state will be retained.

My final goal was getting this to run on the Steam Deck, which in the end worked wonderfully (see tweet)!

Features

  • Working Tetris game
  • Supports Linux & Macos
  • Keyboard & Mouse + Controller Support
  • Music & Sound Effects
  • Windowed & Fullscreen Modes

Setup

  • You'll need Zig, which you can get here. I'm currently using the latest nightly: 0.12.0-dev.2139+e025ad7b4. This includes a C compiler with zig cc!
  • You will also need the Raylib development library dependencies. See the Working on {YOUR OS} sections of Raylib's wiki.

Now you're ready to go!

To run a debug build, run:

zig build run

To run a release build, run:

zig build -Doptimize=ReleaseSafe run

You can run in fullscreen mode with the --fullscreen flag.

zig build run -- --fullscreen

image

This image was made for the purposes of a colorful screenshot, ignore all the gaps :)

About

Tetris clone built with Raylib

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published