noise.c File Reference

#include "common.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "bu.h"
#include "vmath.h"
#include "bn.h"
Include dependency graph for noise.c:

Go to the source code of this file.

Data Structures

struct  str_ht
struct  fbm_spec

Defines

#define SMOOTHSTEP(x)   ((x) * (x) * (3 - 2*(x)))
 interpolate smoothly from 0 .. 1
#define MAXSIZE   267
#define INCRSUM(m, s, x, y, z)
#define TABLE_SIZE   4096
#define MAGIC_STRHT1   1771561
#define MAGIC_STRHT2   1651771
#define MAGIC_TAB1   9823
#define MAGIC_TAB2   784642
#define CK_HT()
#define Hash3d(a, b, c)
#define MAGIC_fbm_spec_wgt   0x837592
#define PSCALE(_p, _s)   _p[0] *= _s; _p[1] *= _s; _p[2] *= _s
#define PCOPY(_d, _s)   _d[0] = _s[0]; _d[1] = _s[1]; _d[2] = _s[2]
#define CACHE_SPECTRAL_WGTS   1

Functions

void bn_noise_init (void)
double bn_noise_perlin (fastf_t *point)
 Robert Skinner's Perlin-style "Noise" function.
void bn_noise_vec (fastf_t *point, fastf_t *result)
struct fbm_specfind_spec_wgt (double h, double l, double o)
double bn_noise_fbm (fastf_t *point, double h_val, double lacunarity, double octaves)
 Procedural fBm evaluated at "point"; returns value stored in "value".
double bn_noise_turb (fastf_t *point, double h_val, double lacunarity, double octaves)
 Procedural turbulence evaluated at "point";.
double bn_noise_ridged (fastf_t *point, double h_val, double lacunarity, double octaves, double offset)
 A ridged noise pattern.
double bn_noise_mf (fastf_t *point, double h_val, double lacunarity, double octaves, double offset)

Detailed Description

These noise functions provide mostly random noise at the integer lattice points. The functions should be evaluated at non-integer locations for their nature to be realized.

Conatins contributed code from: F. Kenton Musgrave Robert Skinner

Definition in file noise.c.


Define Documentation

#define CACHE_SPECTRAL_WGTS   1
Generated on Tue Dec 11 13:14:28 2012 for LIBBN by  doxygen 1.6.3