Expand description
Some simple noise functions and traits to allow easy integration with your own.
use noise_fn::{Seedable, NoiseDomain, Octaves, Simplex};
use sized_matrix::Vector;
let seed = 12345;
let octaves = Octaves::<_, 4>::new(Simplex::new(), 0.5, 0.5).seed(seed);
let value2D = octaves.noise(Vector::vector([1.2, -3.5]));
let value3D = octaves.noise(Vector::vector([1.2, -3.5, 2.8]));To use this, add it as a dependency to your Cargo.toml:
[dependencies]
noise_fn = "^0.2.0"Re-exports§
pub use noise::Noise;pub use noise::Seedable;pub use noise::NoiseDomain;pub use helpers::Config;
Modules§
Structs§
- A noise function which sums two other noise functions.
- A noise function returning a constant value.
- A noise function which returns a gradient.
- Seeded pseudorandom values using a fast non-cryptographic hash function.
- A noise function formed by summing several octaves of another noise function.
- A noise function which scales both the input and output values.
- A simplex noise function loosely based on Stefan Gustavson’s open source implementation.
- A noise function formed by summing an array of other noise functions.
- Convert random uint values to floating point numbers in the range [0, 1).
- Seeded pseudorandom bytes using a permutation table.