Crates.io | fractl_gui |
lib.rs | fractl_gui |
version | 0.1.0 |
source | src |
created_at | 2024-01-17 13:49:04.051053 |
updated_at | 2024-01-17 13:49:04.051053 |
description | Fractal renderer supporting multithreading, gpu compute and wasm |
homepage | |
repository | https://github.com/Shapur1234/Fractaller |
max_upload_size | |
id | 1102968 |
size | 88,413 |
Key | Action |
---|---|
LeftMouseButton | Center view on cursor |
WSAD | Move view |
R | Reset view |
ScrollWheel | Increase / Decrease zoom |
O | Increase zoom |
P | Decrease zoom |
ArrowKey | Increase / Decrease zoom in a direction |
T | Reset zoom |
K | Increase percision (max iterations) |
L | Decrease percision (max iterations) |
M | Next fractal |
N | Previous fractal |
B | Next fractal coloring |
V | Previous fractal coloring |
U | Toggle UI |
Y | Toggle crosshair |
C | Increase exponent (for multi-fractals) |
X | Decrease exponent (for multi-fractals) |
F11 | Toggle Fullscreen |
Escape | Exit |
Package | Description | Pararelism | Floatin point percision |
---|---|---|---|
fractl_gui | Native gui | No | Double (f64) |
fractl_gui-multithread | Native gui | CPU multithreading | Double (f64) |
fractl_gui-gpu | Native gui | GPU compute shader | Single (f32) |
fractl_gui-wasm | Web gui | No | Double (f64) |
fractl_gui-win | Native gui crosscompiled to Winows x86_64 | No | Double (f64) |
fractl_gui-win-multithread | Native gui crosscompiled to Winows x86_64 | CPU multithreading | Double (f64) |
fractl_gui-win-gpu | Native gui crosscompiled to Winows x86_64 | GPU compute shader | Single (f32) |
To build: nix build .#Package
To build and run locally: nix run .#Package
Example: nix run .#gui-gpu
Or use on of the build scripts in ./script
nix develop
Feature | Description | Notes |
---|---|---|
multithred | CPU multithreading | multithread and gpu cannot be enabled at the same time |
gpu | GPU computing | multithread and gpu, gpu and f64 cannot be enabled at the same time |
f32 | Single percision floating point numbers | f32 and f64 cannot be enabled at the same time |
f64 | Double percision floating point numbers | f32 and f64 cannot be enabled at the same time |
cargo build --package=fractl_gui --no-default-features --release --features "Feature1 Feature2"
cargo run --package=fractl_gui --no-default-features --release --features "Feature1 Feature2"
cargo build --package=fractl_gui --no-default-features --release --features "gpu f32"