Class BlendingData

java.lang.Object
net.minecraft.world.level.levelgen.blending.BlendingData

public class BlendingData extends Object
  • Field Details

    • BLENDING_DENSITY_FACTOR

      private static final double BLENDING_DENSITY_FACTOR
      See Also:
    • CELL_WIDTH

      protected static final int CELL_WIDTH
      See Also:
    • CELL_HEIGHT

      protected static final int CELL_HEIGHT
      See Also:
    • CELL_RATIO

      protected static final int CELL_RATIO
      See Also:
    • SOLID_DENSITY

      private static final double SOLID_DENSITY
      See Also:
    • AIR_DENSITY

      private static final double AIR_DENSITY
      See Also:
    • CELLS_PER_SECTION_Y

      private static final int CELLS_PER_SECTION_Y
      See Also:
    • QUARTS_PER_SECTION

      private static final int QUARTS_PER_SECTION
    • CELL_HORIZONTAL_MAX_INDEX_INSIDE

      private static final int CELL_HORIZONTAL_MAX_INDEX_INSIDE
    • CELL_HORIZONTAL_MAX_INDEX_OUTSIDE

      private static final int CELL_HORIZONTAL_MAX_INDEX_OUTSIDE
    • CELL_COLUMN_INSIDE_COUNT

      private static final int CELL_COLUMN_INSIDE_COUNT
    • CELL_COLUMN_OUTSIDE_COUNT

      private static final int CELL_COLUMN_OUTSIDE_COUNT
    • CELL_COLUMN_COUNT

      private static final int CELL_COLUMN_COUNT
    • areaWithOldGeneration

      private final LevelHeightAccessor areaWithOldGeneration
    • SURFACE_BLOCKS

      private static final List<Block> SURFACE_BLOCKS
    • NO_VALUE

      protected static final double NO_VALUE
      See Also:
    • hasCalculatedData

      private boolean hasCalculatedData
    • heights

      private final double[] heights
    • biomes

      private final List<List<Holder<Biome>>> biomes
    • densities

      private final transient double[][] densities
    • DOUBLE_ARRAY_CODEC

      private static final com.mojang.serialization.Codec<double[]> DOUBLE_ARRAY_CODEC
    • CODEC

      public static final com.mojang.serialization.Codec<BlendingData> CODEC
  • Constructor Details

    • BlendingData

      private BlendingData(int sectionX, int sectionZ, Optional<double[]> heights)
  • Method Details

    • validateArraySize

      private static com.mojang.serialization.DataResult<BlendingData> validateArraySize(BlendingData blendingData)
    • getOrUpdateBlendingData

      @Nullable public static BlendingData getOrUpdateBlendingData(WorldGenRegion region, int chunkX, int chunkZ)
    • sideByGenerationAge

      public static Set<Direction8> sideByGenerationAge(WorldGenLevel level, int chunkX, int chunkZ, boolean oldNoiseGeneration)
    • calculateData

      private void calculateData(ChunkAccess chunk, Set<Direction8> directions)
    • addValuesForColumn

      private void addValuesForColumn(int index, ChunkAccess chunk, int x, int z)
    • getHeightAtXZ

      private int getHeightAtXZ(ChunkAccess chunk, int x, int z)
    • read1

      private static double read1(ChunkAccess chunk, BlockPos.MutableBlockPos pos)
    • read7

      private static double read7(ChunkAccess chunk, BlockPos.MutableBlockPos pos)
    • getDensityColumn

      private double[] getDensityColumn(ChunkAccess chunk, int x, int z, int height)
    • getBiomeColumn

      private List<Holder<Biome>> getBiomeColumn(ChunkAccess chunk, int x, int z)
    • isGround

      private static boolean isGround(ChunkAccess chunk, BlockPos pos)
    • getHeight

      protected double getHeight(int x, int y, int z)
    • getDensity

      private double getDensity(@Nullable double[] heights, int y)
    • getDensity

      protected double getDensity(int x, int y, int z)
    • iterateBiomes

      protected void iterateBiomes(int x, int y, int z, BlendingData.BiomeConsumer consumer)
    • iterateHeights

      protected void iterateHeights(int x, int z, BlendingData.HeightConsumer consumer)
    • iterateDensities

      protected void iterateDensities(int x, int z, int minY, int maxY, BlendingData.DensityConsumer consumer)
    • cellCountPerColumn

      private int cellCountPerColumn()
    • quartCountPerColumn

      private int quartCountPerColumn()
    • getColumnMinY

      private int getColumnMinY()
    • getMinY

      private int getMinY()
    • getCellYIndex

      private int getCellYIndex(int y)
    • getInsideIndex

      private static int getInsideIndex(int x, int z)
    • getOutsideIndex

      private static int getOutsideIndex(int x, int z)
    • getX

      private static int getX(int index)
    • getZ

      private static int getZ(int index)
    • zeroIfNegative

      private static int zeroIfNegative(int value)
    • getAreaWithOldGeneration

      public LevelHeightAccessor getAreaWithOldGeneration()