blender_noiselib.cpp File Reference

#include <math.h>
#include "blender_noiselib.h"

Go to the source code of this file.

Namespaces

namespace  blender

Defines

#define HASHVEC(x, y, z)   hashvectf+3*hash[ (hash[ (hash[(z) & 255]+(y)) & 255]+(x)) & 255]
#define HASHPNT(x, y, z)   hashpntf+3*hash[ (hash[ (hash[(z) & 255]+(y)) & 255]+(x)) & 255]
#define lerp(t, a, b)   ((a)+(t)*((b)-(a)))
#define npfade(t)   ((t)*(t)*(t)*((t)*((t)*6-15)+10))
#define DOT(a, b)   (a[0] * b[0] + a[1] * b[1] + a[2] * b[2])
#define setup(i, b0, b1, r0, r1)
#define at(rx, ry, rz)   ( rx * q[0] + ry * q[1] + rz * q[2] )
#define surve(t)   ( t * t * (3. - 2. * t) )

Functions

float blender::noise3_perlin (float vec[3])
float blender::turbulence_perlin (float *point, float lofreq, float hifreq)
float blender::turbulencep (float noisesize, float x, float y, float z, int nr)
static float blender::grad (int hash, float x, float y, float z)
static float blender::newPerlin (float x, float y, float z)
static float blender::newPerlinU (float x, float y, float z)
static float blender::orgBlenderNoise (float x, float y, float z)
static float blender::orgBlenderNoiseS (float x, float y, float z)
float blender::BLI_hnoise (float noisesize, float x, float y, float z)
float blender::BLI_turbulence (float noisesize, float x, float y, float z, int nr)
float blender::BLI_turbulence1 (float noisesize, float x, float y, float z, int nr)
static float blender::orgPerlinNoise (float x, float y, float z)
static float blender::orgPerlinNoiseU (float x, float y, float z)
float blender::BLI_hnoisep (float noisesize, float x, float y, float z)
static float blender::dist_Squared (float x, float y, float z, float e)
static float blender::dist_Real (float x, float y, float z, float e)
static float blender::dist_Manhattan (float x, float y, float z, float e)
static float blender::dist_Chebychev (float x, float y, float z, float e)
static float blender::dist_MinkovskyH (float x, float y, float z, float e)
static float blender::dist_Minkovsky4 (float x, float y, float z, float e)
static float blender::dist_Minkovsky (float x, float y, float z, float e)
void blender::voronoi (float x, float y, float z, float *da, float *pa, float me, int dtype)
static float blender::voronoi_F1 (float x, float y, float z)
static float blender::voronoi_F2 (float x, float y, float z)
static float blender::voronoi_F3 (float x, float y, float z)
static float blender::voronoi_F4 (float x, float y, float z)
static float blender::voronoi_F1F2 (float x, float y, float z)
static float blender::voronoi_Cr (float x, float y, float z)
static float blender::voronoi_F1S (float x, float y, float z)
static float blender::voronoi_F2S (float x, float y, float z)
static float blender::voronoi_F3S (float x, float y, float z)
static float blender::voronoi_F4S (float x, float y, float z)
static float blender::voronoi_F1F2S (float x, float y, float z)
static float blender::voronoi_CrS (float x, float y, float z)
static float blender::cellNoiseU (float x, float y, float z)
float blender::cellNoise (float x, float y, float z)
void blender::cellNoiseV (float x, float y, float z, float *ca)
float blender::BLI_gNoise (float noisesize, float x, float y, float z, int hard, int noisebasis)
float blender::BLI_gTurbulence (float noisesize, float x, float y, float z, int oct, int hard, int noisebasis)
float blender::mg_fBm (float x, float y, float z, float H, float lacunarity, float octaves, int noisebasis)
float blender::mg_MultiFractal (float x, float y, float z, float H, float lacunarity, float octaves, int noisebasis)
float blender::mg_HeteroTerrain (float x, float y, float z, float H, float lacunarity, float octaves, float offset, int noisebasis)
float blender::mg_HybridMultiFractal (float x, float y, float z, float H, float lacunarity, float octaves, float offset, float gain, int noisebasis)
float blender::mg_RidgedMultiFractal (float x, float y, float z, float H, float lacunarity, float octaves, float offset, float gain, int noisebasis)
float blender::mg_VLNoise (float x, float y, float z, float distortion, int nbas1, int nbas2)

Variables

static float blender::hashpntf [768]
unsigned char blender::hash [512]
float blender::hashvectf [768]
static char blender::p [512+2]
float blender::g [512+2][3]


Define Documentation

#define at ( rx,
ry,
rz   )     ( rx * q[0] + ry * q[1] + rz * q[2] )

Referenced by blender::noise3_perlin().

#define DOT ( a,
 )     (a[0] * b[0] + a[1] * b[1] + a[2] * b[2])

Definition at line 905 of file blender_noiselib.cpp.

#define HASHPNT ( x,
y,
 )     hashpntf+3*hash[ (hash[ (hash[(z) & 255]+(y)) & 255]+(x)) & 255]

Definition at line 49 of file blender_noiselib.cpp.

Referenced by blender::cellNoiseV(), and blender::voronoi().

#define HASHVEC ( x,
y,
 )     hashvectf+3*hash[ (hash[ (hash[(z) & 255]+(y)) & 255]+(x)) & 255]

Definition at line 46 of file blender_noiselib.cpp.

#define lerp ( t,
a,
 )     ((a)+(t)*((b)-(a)))

Definition at line 204 of file blender_noiselib.cpp.

Referenced by blender::newPerlin(), and blender::noise3_perlin().

#define npfade (  )     ((t)*(t)*(t)*((t)*((t)*6-15)+10))

Definition at line 205 of file blender_noiselib.cpp.

Referenced by blender::newPerlin().

#define setup ( i,
b0,
b1,
r0,
r1   ) 

Value:

t = vec[i] + 10000.; \
        b0 = ((int)t) & 255; \
        b1 = (b0+1) & 255; \
        r0 = t - (int)t; \
        r1 = r0 - 1.;

Definition at line 907 of file blender_noiselib.cpp.

Referenced by blender::noise3_perlin().

#define surve (  )     ( t * t * (3. - 2. * t) )

Referenced by blender::noise3_perlin().


Generated on Fri Jul 24 11:49:57 2009 for lux by  doxygen 1.5.9