Fast noise functions for creative coding with Blinc.
Zero-dependency, pure math. Sample Perlin noise inside a
blinc_canvas_kit::Sketch, a blinc_paint pipeline, or any piece of
plain Rust — this crate has no Blinc dependencies of its own.
use blinc_noise::{Perlin, Noise2, Fbm};
let p = Perlin::new(42);
let v = p.sample2(1.5, 2.5); // single-octave Perlin
let fbm = Fbm::new(Perlin::new(42)) // layered fBm
.octaves(6)
.lacunarity(2.0)
.gain(0.5);
let v = fbm.sample2(1.5, 2.5);- Perlin 2D / 3D (improved Ken Perlin / SIGGRAPH 2002)
- fBm generic over any
Noise2/Noise3impl - Seedable via
u64, deterministic across runs and platforms - See BACKLOG.md for planned additions (Simplex, Worley, Value noise, 4D, ridged / turbulent modifiers, vector noise).
Apache-2.0.