Teotile is a simple game engine that can run simple pixel games. It was primarily designed to run on a 12x12 LED pixel grid using a WS281x LED. However, the code is portable enough to run on anything that can process input commands and output a grid of RGB pixels.
Teotile can be used alone or with a friend. There are both single-player and two-player games.
It is a useful software base for a "Snake on your bookshelf" or "Flappy Bird on your Christmas tree" style application.
- Connect Four
- Tic-Tac-Toe
- Flappy Bird
- Snake
- Maze
- Space Invaders
- Doodle Jump
- Tetris
- Shooter
- Button War
- Wall Dodger
- Paint
- Raspberry Pi (Gamepad input + WS281x LED output)
- TUI
- Web (demo)
- WIP: Embedded on RPi Pico
- Connect WS281x LED strip to RPi, the default pin is 10 but it can be changed with the
--led-pin
argument. - Connect gamepad. Any gamepad that shows up in
/dev/input/js0
should work. - Clone the repository and run the program with
cargo run --release
.
git clone https://github.com/kottz/teotile
cd teotile/rpi
cargo run --release -- --led-pin 10
git clone https://github.com/kottz/teotile
cd teotile
cargo run --release
Teotile uses the Embassy framework. Have a look at their documentation on how to get started with probe-rs.
- Connect the LED strip data pin to pin 16 on the Pico.
- Flash Teotile to your RPi Pico:
git clone https://github.com/kottz/teotile
cd teotile/embedded
cargo run --release