Gamedev Framework (gf)  0.4.0
A C++11 framework for 2D games
Public Member Functions | List of all members
gf::FractalNoise3D Class Reference

Fractal 3D noise. More...

#include <gf/Noises.h>

Inheritance diagram for gf::FractalNoise3D:
Inheritance graph
[legend]

Public Member Functions

 FractalNoise3D (Noise3D &noise, double scale, std::size_t octaves=8, double lacunarity=2.0, double persistence=0.5, double dimension=1.0)
 Constructor. More...
 
virtual double getValue (double x, double y, double z) override
 Take a 3D noise value. More...
 
- Public Member Functions inherited from gf::Noise3D
virtual ~Noise3D ()
 Virtual destructor. More...
 
double operator() (double x, double y, double z)
 Take a 3D noise value. More...
 

Detailed Description

Fractal 3D noise.

Fractal noise is based of fractional Brownian motion (fBm). It consists in adding several octaves of a basic noise at different amplitudes.

Constructor & Destructor Documentation

gf::FractalNoise3D::FractalNoise3D ( Noise3D noise,
double  scale,
std::size_t  octaves = 8,
double  lacunarity = 2.0,
double  persistence = 0.5,
double  dimension = 1.0 
)

Constructor.

Parameters
noiseThe basic noise function
scaleThe scale factor
octavesThe number of octaves
lacunarityThe factor applied to frequency
persistenceThe factor applied to amplitude
dimensionThe contrast between the layers

Member Function Documentation

virtual double gf::FractalNoise3D::getValue ( double  x,
double  y,
double  z 
)
overridevirtual

Take a 3D noise value.

Parameters
xThe x coordinate of the noise value
yThe y coordinate of the noise value
zThe z coordinate of the noise value
Returns
The noise value

Implements gf::Noise3D.