singlePerlinFractalBillow3 method

double singlePerlinFractalBillow3(
  1. double x,
  2. double y,
  3. double z
)

Implementation

double singlePerlinFractalBillow3(double x, double y, double z) {
  var seed = baseNoise.seed;
  var dx = x;
  var dy = y;
  var dz = z;
  var sum = baseNoise.singlePerlin3(seed, dx, dy, dz).abs() * 2.0 - 1.0;
  var amp = 1.0;

  for (var i = 1; i < octaves; i++) {
    dx *= lacunarity;
    dy *= lacunarity;
    dz *= lacunarity;

    amp *= gain;
    sum +=
        (baseNoise.singlePerlin3(++seed, dx, dy, dz).abs() * 2.0 - 1.0) * amp;
  }

  return sum * fractalBounding;
}