18 #ifndef __H__OCULAR_MATH_PERLIN_NOISE__H__
19 #define __H__OCULAR_MATH_PERLIN_NOISE__H__
22 #include "Math/Random/ARandom.hpp"
73 virtual float getValue(
float const x);
86 virtual float getValue(
float const x,
float const y);
100 virtual float getValue(
float const x,
float const y,
float const z);
145 float getInterpolatedNoise(
float const x);
146 float getInterpolatedNoise(
float const x,
float const y);
147 float getInterpolatedNoise(
float const x,
float const y,
float const z);
149 float getSmoothNoise(
float const x,
float const y);
151 float getRandom(
float const x,
float const y);
159 std::array<uint32_t, 514> m_Permutations;
160 std::array<float, 514> m_Gradient1;
161 std::array<std::array<float, 2>, 514> m_Gradient2;
162 std::array<std::array<float, 3>, 514> m_Gradient3[514][3];
166 std::shared_ptr<Random::ARandom> m_PRNG;
void seed(int64_t seed)
Definition: PerlinNoise.cpp:112
void setPersistence(float const persistence)
Definition: PerlinNoise.cpp:98
Note: Once this library is made dynamic, this will no longer be needed.
Definition: Common.hpp:70
virtual float getValue(float const x)
Definition: PerlinNoise.cpp:60
Definition: PerlinNoise.hpp:57
void setScale(float const scale)
Definition: PerlinNoise.cpp:103
void setOctaves(uint32_t const octaves)
Definition: PerlinNoise.cpp:93
Definition: ANoise.hpp:48