pub use crate::{
DynamicConfigurableSampleable, DynamicSampleable, Noise, NoiseFunction, Sampleable,
SampleableFor, ScalableNoise, SeedableNoise,
cell_noise::{
BlendCellGradients, BlendCellValues, DistanceBlend, MixCellGradients, MixCellValues,
PerCell, PerCellPointDistances, QuickGradients, SimplecticBlend, WorleyLeastDistance,
},
cells::{OrthoGrid, SimplexGrid, Voronoi, WithGradient},
curves::{DoubleSmoothstep, Lerped, Linear, Smoothstep},
layering::{
DomainWarp, FractalLayers, LayeredNoise, Normed, NormedByDerivative, Octave,
PeakDerivativeContribution, Persistence, SmoothDerivativeContribution,
},
lengths::{EuclideanLength, ManhattanLength},
math_noise::{Billow, PingPong, SNormToUNorm, UNormToSNorm},
misc_noise::{Masked, Offset, RandomElements, RemapCurve, Scaled, SelfMasked, Translated},
rng::{Random, SNorm, UNorm},
};
pub mod common_noise {
use super::*;
pub type White = PerCell<OrthoGrid, Random<UNorm, f32>>;
pub type Value = MixCellValues<OrthoGrid, Smoothstep, Random<UNorm, f32>>;
pub type Perlin = MixCellGradients<OrthoGrid, Smoothstep, QuickGradients>;
pub type Simplex = BlendCellGradients<SimplexGrid, SimplecticBlend, QuickGradients>;
pub type ValueWithDerivative = MixCellValues<OrthoGrid, Smoothstep, Random<UNorm, f32>, true>;
pub type PerlinWithDerivative = MixCellGradients<OrthoGrid, Smoothstep, QuickGradients, true>;
pub type SimplexWithDerivative =
BlendCellGradients<SimplexGrid, SimplecticBlend, QuickGradients, true>;
pub type Worley = PerCellPointDistances<Voronoi, EuclideanLength, WorleyLeastDistance>;
pub type Fbm<T> = LayeredNoise<Normed<f32>, Persistence, FractalLayers<Octave<T>>>;
}