Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grunnt/falling-rust
A falling-sand toy written using Rust, Bevy and egui.
https://github.com/grunnt/falling-rust
bevy egui rust rust-lang
Last synced: about 2 months ago
JSON representation
A falling-sand toy written using Rust, Bevy and egui.
- Host: GitHub
- URL: https://github.com/grunnt/falling-rust
- Owner: grunnt
- License: mit
- Created: 2021-09-18T19:38:09.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-11-08T08:32:50.000Z (11 months ago)
- Last Synced: 2024-07-24T21:12:20.877Z (about 2 months ago)
- Topics: bevy, egui, rust, rust-lang
- Language: Rust
- Homepage: https://www.basvs.dev/projects/falling-rust
- Size: 714 KB
- Stars: 25
- Watchers: 1
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Falling Rust
A falling-sand toy written using Rust, Bevy and egui.
[Read more about it on my blog](https://www.basvs.dev/projects/falling-rust).
## How to run
A release version for Windows is available at [GitHub releases](https://github.com/grunnt/falling-rust/releases).
## How to run from the code
You will need to have [Rust](https://www.rust-lang.org) installed to compile this.
The simulation is quite CPU intensive, so you may want to run this in release mode:
```
cargo run --release
```## How to build for the web
Falling-rust can be built as a WASM binary as well, which allows it to be run inside a webpage.
You will need to have the `wasm32-unknown-unknown` target installed. This is easily done using rustup:
```
rustup target add wasm32-unknown-unknown
```Then falling-rust needs to be compiled for wasm, using the profile that optimizes for binary size:
```
cargo build --profile web --target wasm32-unknown-unknown
```And finally you can generate bindings for javascript (and an index.html page) using `wasm-bindgen`:
```
wasm-bindgen --out-dir ./wasm --target web ./target/wasm32-unknown-unknown/web/falling-rust.wasm
```