CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
Math::PerlinNoise< T > Class Template Reference

#include <CeresEngine/Math/Noise/PerlinNoise.hpp>

Public Member Functions

 PerlinNoise (const UInt32 seed)
 
operator() (T x) const
 
operator() (T x, T y) const
 
operator() (T x, T y, T z) const
 

Static Private Member Functions

static constexpr T fade (T t) noexcept
 
static constexpr T lerp (T t, T a, T b) noexcept
 
static constexpr T grad (const Int32 hash, T x, T y, T z) noexcept
 

Private Attributes

Int32 p [512]
 

Constructor & Destructor Documentation

◆ PerlinNoise()

template<typename T = double>
Math::PerlinNoise< T >::PerlinNoise ( const UInt32  seed)
inlineexplicit

Member Function Documentation

◆ fade()

template<typename T = double>
static constexpr T Math::PerlinNoise< T >::fade ( t)
inlinestaticconstexprprivatenoexcept

◆ grad()

template<typename T = double>
static constexpr T Math::PerlinNoise< T >::grad ( const Int32  hash,
x,
y,
z 
)
inlinestaticconstexprprivatenoexcept

◆ lerp()

template<typename T = double>
static constexpr T Math::PerlinNoise< T >::lerp ( t,
a,
b 
)
inlinestaticconstexprprivatenoexcept

◆ operator()() [1/3]

template<typename T = double>
T Math::PerlinNoise< T >::operator() ( x) const
inline

◆ operator()() [2/3]

template<typename T = double>
T Math::PerlinNoise< T >::operator() ( x,
y 
) const
inline

◆ operator()() [3/3]

template<typename T = double>
T Math::PerlinNoise< T >::operator() ( x,
y,
z 
) const
inline

Member Data Documentation

◆ p

template<typename T = double>
Int32 Math::PerlinNoise< T >::p[512]
private

The documentation for this class was generated from the following file: