Class OctavePerlinNoiseSampler

java.lang.Object
net.minecraft.util.math.noise.OctavePerlinNoiseSampler
All Implemented Interfaces:
NoiseSampler

public class OctavePerlinNoiseSampler
extends Object
implements NoiseSampler
  • Field Details

    • octaveSamplers

      private final PerlinNoiseSampler[] octaveSamplers
    • amplitudes

      private final DoubleList amplitudes
    • persistence

      private final double persistence
    • lacunarity

      private final double lacunarity
  • Constructor Details

    • OctavePerlinNoiseSampler

      public OctavePerlinNoiseSampler​(ChunkRandom random, IntStream octaves)
    • OctavePerlinNoiseSampler

      public OctavePerlinNoiseSampler​(ChunkRandom random, List<Integer> octaves)
    • OctavePerlinNoiseSampler

      private OctavePerlinNoiseSampler​(ChunkRandom random, IntSortedSet octaves)
    • OctavePerlinNoiseSampler

      private OctavePerlinNoiseSampler​(ChunkRandom random, com.mojang.datafixers.util.Pair<Integer,​DoubleList> offsetAndAmplitudes)
  • Method Details

    • create

      public static OctavePerlinNoiseSampler create​(ChunkRandom random, int offset, DoubleList amplitudes)
    • calculateAmplitudes

      private static com.mojang.datafixers.util.Pair<Integer,​DoubleList> calculateAmplitudes​(IntSortedSet octaves)
    • sample

      public double sample​(double x, double y, double z)
    • sample

      public double sample​(double x, double y, double z, double yScale, double yMax, boolean useOrigin)
    • getOctave

      @Nullable public PerlinNoiseSampler getOctave​(int octave)
    • maintainPrecision

      public static double maintainPrecision​(double value)
    • sample

      public double sample​(double x, double y, double yScale, double yMax)
      Specified by:
      sample in interface NoiseSampler