Crate noise

Source
Expand description

A procedural noise generation library for Rust.

§Example

use noise::{NoiseFn, Perlin, Seedable};

let perlin = Perlin::new(1);
let val = perlin.get([42.4, 37.7, 2.8]);

Re-exports§

pub use crate::math::vectors::*;

Modules§

core
math
An ultra-light private math library to make our short lives easier as we implement super-complex noise stuff.
permutationtable
utils

Structs§

Abs
Noise function that outputs the absolute value of the output value from the source function.
Add
Noise function that outputs the sum of the two output values from two source functions.
BasicMulti
Noise function that outputs heterogenous Multifractal noise.
Billow
Noise function that outputs “billowy” noise.
Blend
Noise function that outputs a weighted blend of the output values from two source functions given the output value supplied by a control function.
Cache
Noise function that caches the last output value generated by the source function.
Checkerboard
Noise function that outputs a checkerboard pattern.
Clamp
Noise function that clamps the output value from the source function to a range of values.
Constant
Noise function that outputs a constant value.
Curve
Noise function that maps the output value from the source function onto an arbitrary function curve.
Cylinders
Noise function that outputs concentric cylinders.
Displace
Noise function that uses multiple source functions to displace each coordinate of the input value before returning the output value from the source function.
Exponent
Noise function that maps the output value from the source function onto an exponential curve.
Fbm
Noise function that outputs fBm (fractal Brownian motion) noise.
HybridMulti
Noise function that outputs hybrid Multifractal noise.
Max
Noise function that outputs the larger of the two output values from two source functions.
Min
Noise function that outputs the smaller of the two output values from two source functions.
Multiply
Noise function that outputs the product of the two output values from two source functions.
Negate
Noise function that negates the output value from the source function.
OpenSimplex
Noise function that outputs 2/3/4-dimensional Open Simplex noise.
Perlin
Noise function that outputs 1/2/3/4-dimensional Perlin noise.
PerlinSurflet
Noise function that outputs 2/3/4-dimensional Perlin noise.
Power
Noise function that raises the output value from the first source function to the power of the output value of the second source function.
RidgedMulti
Noise function that outputs ridged-multifractal noise.
RotatePoint
Noise function that rotates the input value around the origin before returning the output value from the source function.
ScaleBias
Noise function that applies a scaling factor and a bias to the output value from the source function.
ScalePoint
Noise function that scales the coordinates of the input value before returning the output value from the source function.
Select
Noise function that outputs the value selected from one of two source functions chosen by the output value from a control function.
Simplex
Noise function that outputs N-dimensional Simplex noise.
SuperSimplex
Noise function that outputs 2/3-dimensional Super Simplex noise.
Terrace
Noise function that maps the output value from the source function onto a terrace-forming curve.
TranslatePoint
Noise function that moves the coordinates of the input value before returning the output value from the source function.
Turbulence
Noise function that randomly displaces the input value before returning the output value from the source function.
Value
Noise function that outputs 2/3/4-dimensional Value noise.
Worley
Noise function that outputs Worley noise.

Traits§

MultiFractal
Trait for MultiFractal functions
NoiseFn
Base trait for noise functions.
Seedable
Trait for functions that require a seed before generating their values