Blender  V3.3
Functions
BLI_noise.h File Reference

Go to the source code of this file.

Functions

float BLI_noise_hnoise (float noisesize, float x, float y, float z)
 
float BLI_noise_hnoisep (float noisesize, float x, float y, float z)
 
float BLI_noise_turbulence (float noisesize, float x, float y, float z, int nr)
 
float BLI_noise_generic_noise (float noisesize, float x, float y, float z, bool hard, int noisebasis)
 
float BLI_noise_generic_turbulence (float noisesize, float x, float y, float z, int oct, bool hard, int noisebasis)
 
float BLI_noise_mg_fbm (float x, float y, float z, float H, float lacunarity, float octaves, int noisebasis)
 
float BLI_noise_mg_multi_fractal (float x, float y, float z, float H, float lacunarity, float octaves, int noisebasis)
 
float BLI_noise_mg_variable_lacunarity (float x, float y, float z, float distortion, int nbas1, int nbas2)
 
float BLI_noise_mg_hetero_terrain (float x, float y, float z, float H, float lacunarity, float octaves, float offset, int noisebasis)
 
float BLI_noise_mg_hybrid_multi_fractal (float x, float y, float z, float H, float lacunarity, float octaves, float offset, float gain, int noisebasis)
 
float BLI_noise_mg_ridged_multi_fractal (float x, float y, float z, float H, float lacunarity, float octaves, float offset, float gain, int noisebasis)
 
void BLI_noise_voronoi (float x, float y, float z, float *da, float *pa, float me, int dtype)
 
float BLI_noise_cell (float x, float y, float z)
 
void BLI_noise_cell_v3 (float x, float y, float z, float r_ca[3])
 

Function Documentation

◆ BLI_noise_cell()

float BLI_noise_cell ( float  x,
float  y,
float  z 
)

newnoise: BLI_noise_cell & BLI_noise_cell_v3 (for vector/point/color). idem, signed.

Definition at line 1123 of file noise.c.

References BLI_cellNoiseU(), x, y, and z.

Referenced by BLI_noise_mg_fbm(), BLI_noise_mg_hetero_terrain(), BLI_noise_mg_hybrid_multi_fractal(), BLI_noise_mg_multi_fractal(), BLI_noise_mg_ridged_multi_fractal(), and BLI_noise_mg_variable_lacunarity().

◆ BLI_noise_cell_v3()

void BLI_noise_cell_v3 ( float  x,
float  y,
float  z,
float  r_ca[3] 
)

Returns a vector/point/color in r_ca, using point hash-array directly.

Definition at line 1128 of file noise.c.

References blender::math::floor(), HASHPNT, x, y, and z.

Referenced by voronoiTex().

◆ BLI_noise_generic_noise()

float BLI_noise_generic_noise ( float  noisesize,
float  x,
float  y,
float  z,
bool  hard,
int  noisebasis 
)

newnoise: generic noise & turbulence functions to replace the above BLI_noise_hnoise/p & BLI_noise_turbulence/1. This is done so different noise basis functions can be used. newnoise: generic noise function for use with different noisebasis.

Definition at line 1150 of file noise.c.

References BLI_cellNoiseU(), fabsf, float(), newPerlinU(), orgBlenderNoise(), orgPerlinNoiseU(), voronoi_Cr(), voronoi_F1(), voronoi_F1F2(), voronoi_F2(), voronoi_F3(), voronoi_F4(), x, y, and z.

Referenced by M_Noise_noise(), noise_vector(), stucci(), turb(), and wood_int().

◆ BLI_noise_generic_turbulence()

float BLI_noise_generic_turbulence ( float  noisesize,
float  x,
float  y,
float  z,
int  oct,
bool  hard,
int  noisebasis 
)

newnoise: generic turbulence function for use with different noisebasis.

Definition at line 1207 of file noise.c.

References BLI_cellNoiseU(), fabsf, float(), newPerlinU(), orgBlenderNoise(), orgPerlinNoiseU(), sum(), t, voronoi_Cr(), voronoi_F1(), voronoi_F1F2(), voronoi_F2(), voronoi_F3(), voronoi_F4(), x, y, and z.

Referenced by alter_co(), clouds(), do_physical_effector(), do_rough(), do_rough_curve(), marble_int(), and pointdensity().

◆ BLI_noise_hnoise()

float BLI_noise_hnoise ( float  noisesize,
float  x,
float  y,
float  z 
)

Definition at line 423 of file noise.c.

References orgBlenderNoise(), x, y, and z.

Referenced by BLI_noise_turbulence().

◆ BLI_noise_hnoisep()

float BLI_noise_hnoisep ( float  noisesize,
float  x,
float  y,
float  z 
)

Definition at line 840 of file noise.c.

References noise3_perlin(), x, y, and z.

◆ BLI_noise_mg_fbm()

float BLI_noise_mg_fbm ( float  x,
float  y,
float  z,
float  H,
float  lacunarity,
float  octaves,
int  noisebasis 
)

Procedural fBm evaluated at "point"; returns value stored in "value".

Parameters
His the fractal increment parameter.
lacunarityis the gap between successive frequencies.
octavesis the number of frequencies in the fBm.

Definition at line 1269 of file noise.c.

References BLI_noise_cell(), float(), floorf, H, newPerlin(), orgBlenderNoiseS(), orgPerlinNoise(), powf, voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_fractal(), and mg_mFractalOrfBmTex().

◆ BLI_noise_mg_hetero_terrain()

float BLI_noise_mg_hetero_terrain ( float  x,
float  y,
float  z,
float  H,
float  lacunarity,
float  octaves,
float  offset,
int  noisebasis 
)

Heterogeneous procedural terrain function: stats by altitude method. Evaluated at "point"; returns value stored in "value".

Parameters
HDetermines the fractal dimension of the roughest areas.
lacunarityIs the gap between successive frequencies.
octavesIs the number of frequencies in the fBm.
offsetRaises the terrain from sea level.

Definition at line 1388 of file noise.c.

References BLI_noise_cell(), float(), floorf, H, newPerlin(), offset, orgBlenderNoiseS(), orgPerlinNoise(), powf, voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_hetero_terrain(), and mg_HTerrainTex().

◆ BLI_noise_mg_hybrid_multi_fractal()

float BLI_noise_mg_hybrid_multi_fractal ( float  x,
float  y,
float  z,
float  H,
float  lacunarity,
float  octaves,
float  offset,
float  gain,
int  noisebasis 
)

Hybrid additive/multiplicative multi-fractal terrain model.

Some good parameter values to start with:

Parameters
H0.25
offset0.7

Definition at line 1458 of file noise.c.

References BLI_noise_cell(), float(), floorf, H, newPerlin(), offset, orgBlenderNoiseS(), orgPerlinNoise(), powf, result, voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_hybrid_multi_fractal(), and mg_ridgedOrHybridMFTex().

◆ BLI_noise_mg_multi_fractal()

float BLI_noise_mg_multi_fractal ( float  x,
float  y,
float  z,
float  H,
float  lacunarity,
float  octaves,
int  noisebasis 
)

Procedural multi-fractal evaluated at "point"; returns value stored in "value".

Parameters
Hdetermines the highest fractal dimension.
lacunarityis gap between successive frequencies.
octavesis the number of frequencies in the fBm.
Note
There used to be a parameter called offset, old docs read: is the zero offset, which determines multi-fractality.

Definition at line 1329 of file noise.c.

References BLI_noise_cell(), float(), floorf, H, newPerlin(), orgBlenderNoiseS(), orgPerlinNoise(), powf, voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_multi_fractal(), and mg_mFractalOrfBmTex().

◆ BLI_noise_mg_ridged_multi_fractal()

float BLI_noise_mg_ridged_multi_fractal ( float  x,
float  y,
float  z,
float  H,
float  lacunarity,
float  octaves,
float  offset,
float  gain,
int  noisebasis 
)

Ridged multi-fractal terrain model.

Some good parameter values to start with:

Parameters
H1.0
offset1.0
gain2.0

Definition at line 1534 of file noise.c.

References BLI_noise_cell(), fabsf, float(), H, newPerlin(), offset, orgBlenderNoiseS(), orgPerlinNoise(), powf, result, voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_ridged_multi_fractal(), and mg_ridgedOrHybridMFTex().

◆ BLI_noise_mg_variable_lacunarity()

float BLI_noise_mg_variable_lacunarity ( float  x,
float  y,
float  z,
float  distortion,
int  nbas1,
int  nbas2 
)

"Variable Lacunarity Noise" A distorted variety of Perlin noise.

Definition at line 1605 of file noise.c.

References BLI_noise_cell(), float(), newPerlin(), orgBlenderNoiseS(), orgPerlinNoise(), voronoi_CrS(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2S(), voronoi_F3S(), voronoi_F4S(), x, y, and z.

Referenced by M_Noise_variable_lacunarity(), and mg_distNoiseTex().

◆ BLI_noise_turbulence()

float BLI_noise_turbulence ( float  noisesize,
float  x,
float  y,
float  z,
int  nr 
)

Original turbulence functions.

Definition at line 436 of file noise.c.

References BLI_noise_hnoise(), x, y, and z.

Referenced by fcm_noise_evaluate().

◆ BLI_noise_voronoi()

void BLI_noise_voronoi ( float  x,
float  y,
float  z,
float da,
float pa,
float  me,
int  dtype 
)

Not 'pure' Worley, but the results are virtually the same. Returns distances in da and point coords in pa.

Definition at line 914 of file noise.c.

References dist_Chebychev(), dist_Manhattan(), dist_Minkovsky(), dist_Minkovsky4(), dist_MinkovskyH(), dist_Real(), dist_Squared(), float(), blender::math::floor(), HASHPNT, x, y, and z.

Referenced by do_clump(), M_Noise_voronoi(), voronoi_F1(), voronoi_F1F2(), voronoi_F1F2S(), voronoi_F1S(), voronoi_F2(), voronoi_F2S(), voronoi_F3(), voronoi_F3S(), voronoi_F4(), voronoi_F4S(), and voronoiTex().