A graphical user interface for Noise-rs.
Tip
noise_gui
runs on Linux/Mac/Windows desktops and the web!
- Support for all Noise-rs
NoiseFn
implementations - Allow zoom/pan on preview images
- Allow saving the graph project to a file1
- Allow noise function export1
- Automatic
NoiseFn
cached values - Subroutine blocks, comment blocks, node descriptors, etc.
- WASM support using Trunk
Warning
noise_gui
is currently in the proof-of-concept phase and may contain bugs and missing features.
Ubuntu 22.04:
sudo apt install libgtk-3-dev
Browser:
rustup target add wasm32-unknown-unknown
cargo install trunk
Desktop:
cargo run
Browser:
trunk serve --open
Completed noise graphs may be exported (right-click on any node). The output file is .ron
format
and may be deserialized for use in your programs.
See noise_expr
Once deserialized into an Expr
instance you may replace any decimal or integer values using their
name and the Expr::set_f64
and Expr::set_u32
functions. Note that node names do not have to be
unique and that all nodes sharing the provided name will be updated. The Expr::noise
function may
be used to retrieve a Noise-rs NoiseFn
implementation.
See the example for more details:
cargo run --example read_file --package noise_expr