From 391b34eb697be566de3eda54f3bb75f5abf85bd1 Mon Sep 17 00:00:00 2001 From: Robert Garrett Date: Sun, 7 Sep 2025 18:38:00 -0500 Subject: [PATCH] Start work on a README for the project --- README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..850991e --- /dev/null +++ b/README.md @@ -0,0 +1,21 @@ +# Chaos Game + +The [Chaos Game](https://en.wikipedia.org/wiki/Chaos_game) (wikipedia) is a fractal generator. This program works by iteratively walking half way between the current location (initially the center of the sprite but could be random) and a randomly selected vertex. Each time a step is made, a pixel is filled in at the destination. The color is based on the vertex's color. + +Right now, this program uses a hard-coded triangle and so generates a [Sierpinsky triangle](https://en.wikipedia.org/wiki/Sierpi%C5%84ski_triangle). Other shapes can be used -- see the Chaos Game Wikipedia link for examples. I have not provided a UI for altering these shapes at run time. + +## Building + +### For desktop + +Run `cargo run --release`, just like any other binary crate. + +Use `cargo run --features=dynamic_linking` for faster cycle times when modifying the code. This feature is a pass-through to Bevy's dynamic linking feature. + +### For WASM + +Run `cargo run --release --target=wasm32-unknown-unknown`. This will start a dummy webserver, *wasm-server-runner*, which in turn hosts a dummy webpage that loads the WASM file. Run the program by visiting the dummy site in your browser: [http://localhost:1334] + +This requires the `wasm-server-runner` crate to be installed: `cargo install wasm-server-runner`. + +**TODO:** A "real deployment" section.