15 #include "perlinNoise.h"
27 PerlinNoise(
int table_size,
unsigned long seed) :
28 _table_size(table_size),
29 _table_size_mask(table_size - 1),
34 if (_table_size != 0) {
35 bool table_size_power_2 = ((_table_size ^ _table_size_mask) == (_table_size + _table_size_mask));
36 nassertd(table_size_power_2) {
45 _index.reserve(_table_size * 2);
47 for (i = 0; i < _table_size; ++i) {
50 for (i = 0; i < _table_size; ++i) {
51 int j = _randomizer.random_int(_table_size);
52 nassertv(j >= 0 && j < _table_size);
54 _index[i] = _index[j];
60 for (i = 0; i < _table_size; ++i) {
61 _index.push_back(_index[i]);
73 _table_size(copy._table_size),
74 _table_size_mask(copy._table_size_mask),
75 _randomizer(copy._randomizer),
88 _table_size = copy._table_size;
89 _table_size_mask = copy._table_size_mask;
90 _randomizer = copy._randomizer;
This is the base class for PerlinNoise2 and PerlinNoise3, different dimensions of Perlin noise implem...