Skip to content

Commit f921c99

Browse files
committed
Update README with build instructions, usage and design descriptions
1 parent ef1357e commit f921c99

1 file changed

Lines changed: 109 additions & 1 deletion

File tree

README.md

Lines changed: 109 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,110 @@
11
# PixelWall
2-
Collection of programs that generate animations to project onto a pixel wall.
2+
3+
Collection of C programs that generate animations for a 16x22 pixel wall display, using [Raylib](https://www.raylib.com/) for graphics rendering.
4+
5+
## Prerequisites
6+
7+
Raylib must be pre-built and placed in `raylib/` at the repository root:
8+
9+
- **Linux (Raspberry Pi)**: `raylib/raylib-5.5-raspberry`
10+
- **macOS**: `raylib/raylib-5.5-macos`
11+
- **WASM**: `raylib/raylib-5.5-wasm`
12+
13+
## Building
14+
15+
```bash
16+
make all # Build pixelwall + utilities
17+
make pixelwall # Build main application only
18+
make others # Build utilities (test_grid, osc)
19+
make wasm # Build WebAssembly version (requires emscripten)
20+
make docker-wasm # WASM build via Docker
21+
make clean # Remove build artifacts
22+
```
23+
24+
## Usage
25+
26+
```bash
27+
./pixelwall [options]
28+
```
29+
30+
### Global Options
31+
32+
| Option | Description | Default |
33+
|--------|-------------|---------|
34+
| `-d <design>` | Set design | `snake` |
35+
| `-B <R,G,B>` | Background color | `0,0,0` |
36+
| `-O <R,G,B>` | Border color | `0,0,0` |
37+
| `-r <rows>` | Number of rows | `16` |
38+
| `-c <cols>` | Number of columns | `22` |
39+
| `-w <width>` | Window width | `1276` |
40+
| `-H <height>` | Window height | `928` |
41+
| `-F` | Flip horizontally | off |
42+
| `-f <rate>` | Frame rate | `10` |
43+
| `-b <size>` | Border size (0 to disable) | `4` |
44+
| `-T <seconds>` | Auto-change design interval (0 to disable) | `0` |
45+
| `-h` | Show help | |
46+
47+
### Keyboard Controls
48+
49+
| Key | Action |
50+
|-----|--------|
51+
| `SPACE` | Toggle data overlay |
52+
| `F` | Flip horizontal |
53+
| `V` | Toggle green tint |
54+
| `,` / `.` | Previous / next design |
55+
| `T` | Toggle timer display |
56+
57+
## Designs
58+
59+
### snake
60+
Snake animation that moves around the grid.
61+
62+
### random_pixels
63+
Random colored pixels.
64+
65+
### text
66+
Scrolling text display.
67+
68+
### pong
69+
Self-playing Pong game.
70+
71+
### life
72+
Conway's Game of Life.
73+
74+
### cm5
75+
CM5 blinking lights animation.
76+
77+
### text_arcade
78+
Arcade-style scrolling text.
79+
80+
### clock
81+
Digital clock with seconds marker.
82+
83+
### breakout
84+
Self-playing Breakout game. Use `-C` for colored mode.
85+
86+
### tetris
87+
Self-playing Tetris with AI placement. Use `-C` for colored mode with per-piece colors.
88+
89+
### starfield
90+
Stars fly outward from center creating a warp speed effect. Use `-C` for brightness gradient.
91+
92+
### invaders
93+
Self-playing Space Invaders. Use `-C` for colored mode.
94+
95+
### Examples
96+
97+
```bash
98+
./pixelwall -d tetris # Tetris in green
99+
./pixelwall -d tetris -C # Tetris with colored pieces
100+
./pixelwall -d starfield -C # Starfield with brightness gradient
101+
./pixelwall -d invaders -C # Space Invaders with colors
102+
./pixelwall -d breakout -C # Breakout with colored bricks
103+
./pixelwall -T 30 # Cycle through all designs every 30s
104+
```
105+
106+
Run `./pixelwall -h` to see all design-specific options.
107+
108+
## License
109+
110+
[WTFPL](http://www.wtfpl.net/) - Do What The Fuck You Want To Public License.

0 commit comments

Comments
 (0)