15 releases
0.1.14 | Nov 17, 2023 |
---|---|
0.1.13 | Nov 17, 2023 |
0.1.11 | Sep 4, 2017 |
0.1.10 | Aug 26, 2017 |
0.1.8 | Jun 21, 2017 |
#155 in Graphics APIs
45 downloads per month
3MB
708 lines
Game of Life
Conway's Game of Life implemented in Rust and OpenGL via gfx-rs
.
Done as an exercise to practise Rust and get my feet with with OpenGL.
Areas explored:
- General rendering
- Vertex, fragment shaders
- Pipeline state objects
- Rayon for parallel processing
- Building and deploying cross-platform binaries via GH Actions
Usage
You can run the executable by downloading one of the binaries in releases, or
via cargo install gol
, then running gol
, or if you've cloned the repo,cargo run
.
OPTIONS:
-h, --grid-height <grid-height> Height of the grid [default: 80]
-w, --grid-width <grid-width> Width of the grid [default: 100]
-u, --update-rate <update-rate> Number of updates to the game board per second [default: 30]
--window-height <window-height> Height of the window [default: 768]
--window-width <window-width> Width of the window [default: 1024]
If running via cargo
, options need to be passed by appending --
, i.e. cargo run -- -h 10 -w 10
.
Todo
- Optimise!
Dependencies
~6–15MB
~187K SLoC