Class ChunkNoiseSampler

java.lang.Object
net.minecraft.world.gen.chunk.ChunkNoiseSampler
All Implemented Interfaces:
DensityFunction.EachApplier, DensityFunction.NoisePos

public class ChunkNoiseSampler extends Object implements DensityFunction.EachApplier, DensityFunction.NoisePos
ChunkNoiseSampler is responsible for sampling the density functions for the cells in each chunk, managing caches and interpolators, the Blender, and the block state samplers.

An instance of this is created for every chunk.

Mappings:
Namespace Name
named net/minecraft/world/gen/chunk/ChunkNoiseSampler
intermediary net/minecraft/class_6568
official dyk
  • Field Details

    • generationShapeConfig

      private final GenerationShapeConfig generationShapeConfig
      Mappings:
      Namespace Name Mixin selector
      named generationShapeConfig Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;generationShapeConfig:Lnet/minecraft/world/gen/chunk/GenerationShapeConfig;
      intermediary field_35674 Lnet/minecraft/class_6568;field_35674:Lnet/minecraft/class_5309;
      official a Ldyk;a:Ldyo;
    • horizontalCellCount

      final int horizontalCellCount
      Mappings:
      Namespace Name Mixin selector
      named horizontalCellCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;horizontalCellCount:I
      intermediary field_34599 Lnet/minecraft/class_6568;field_34599:I
      official b Ldyk;b:I
    • verticalCellCount

      final int verticalCellCount
      Mappings:
      Namespace Name Mixin selector
      named verticalCellCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;verticalCellCount:I
      intermediary field_34598 Lnet/minecraft/class_6568;field_34598:I
      official c Ldyk;c:I
    • minimumCellY

      final int minimumCellY
      Mappings:
      Namespace Name Mixin selector
      named minimumCellY Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;minimumCellY:I
      intermediary field_34600 Lnet/minecraft/class_6568;field_34600:I
      official d Ldyk;d:I
    • startCellX

      private final int startCellX
      Mappings:
      Namespace Name Mixin selector
      named startCellX Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startCellX:I
      intermediary field_34601 Lnet/minecraft/class_6568;field_34601:I
      official e Ldyk;e:I
    • startCellZ

      private final int startCellZ
      Mappings:
      Namespace Name Mixin selector
      named startCellZ Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startCellZ:I
      intermediary field_34602 Lnet/minecraft/class_6568;field_34602:I
      official f Ldyk;f:I
    • startBiomeX

      final int startBiomeX
      Mappings:
      Namespace Name Mixin selector
      named startBiomeX Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startBiomeX:I
      intermediary field_34603 Lnet/minecraft/class_6568;field_34603:I
      official g Ldyk;g:I
    • startBiomeZ

      final int startBiomeZ
      Mappings:
      Namespace Name Mixin selector
      named startBiomeZ Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startBiomeZ:I
      intermediary field_34604 Lnet/minecraft/class_6568;field_34604:I
      official h Ldyk;h:I
    • interpolators

      Mappings:
      Namespace Name Mixin selector
      named interpolators Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;interpolators:Ljava/util/List;
      intermediary field_34605 Lnet/minecraft/class_6568;field_34605:Ljava/util/List;
      official i Ldyk;i:Ljava/util/List;
    • caches

      Mappings:
      Namespace Name Mixin selector
      named caches Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;caches:Ljava/util/List;
      intermediary field_36581 Lnet/minecraft/class_6568;field_36581:Ljava/util/List;
      official j Ldyk;j:Ljava/util/List;
    • actualDensityFunctionCache

      private final Map<DensityFunction,DensityFunction> actualDensityFunctionCache
      Mappings:
      Namespace Name Mixin selector
      named actualDensityFunctionCache Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;actualDensityFunctionCache:Ljava/util/Map;
      intermediary field_36582 Lnet/minecraft/class_6568;field_36582:Ljava/util/Map;
      official k Ldyk;k:Ljava/util/Map;
    • surfaceHeightEstimateCache

      private final Long2IntMap surfaceHeightEstimateCache
      Mappings:
      Namespace Name Mixin selector
      named surfaceHeightEstimateCache Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;surfaceHeightEstimateCache:Lit/unimi/dsi/fastutil/longs/Long2IntMap;
      intermediary field_36273 Lnet/minecraft/class_6568;field_36273:Lit/unimi/dsi/fastutil/longs/Long2IntMap;
      official l Ldyk;l:Lit/unimi/dsi/fastutil/longs/Long2IntMap;
    • aquiferSampler

      private final AquiferSampler aquiferSampler
      Mappings:
      Namespace Name Mixin selector
      named aquiferSampler Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;aquiferSampler:Lnet/minecraft/world/gen/chunk/AquiferSampler;
      intermediary field_34613 Lnet/minecraft/class_6568;field_34613:Lnet/minecraft/class_6350;
      official m Ldyk;m:Ldxs;
    • initialDensityWithoutJaggedness

      private final DensityFunction initialDensityWithoutJaggedness
      Mappings:
      Namespace Name Mixin selector
      named initialDensityWithoutJaggedness Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;initialDensityWithoutJaggedness:Lnet/minecraft/world/gen/densityfunction/DensityFunction;
      intermediary field_36583 Lnet/minecraft/class_6568;field_36583:Lnet/minecraft/class_6910;
      official n Ldyk;n:Ldxz;
    • blockStateSampler

      private final ChunkNoiseSampler.BlockStateSampler blockStateSampler
      Mappings:
      Namespace Name Mixin selector
      named blockStateSampler Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;blockStateSampler:Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler$BlockStateSampler;
      intermediary field_36584 Lnet/minecraft/class_6568;field_36584:Lnet/minecraft/class_6568$class_6569;
      official o Ldyk;o:Ldyk$c;
    • blender

      private final Blender blender
      Mappings:
      Namespace Name Mixin selector
      named blender Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;blender:Lnet/minecraft/world/gen/chunk/Blender;
      intermediary field_35487 Lnet/minecraft/class_6568;field_35487:Lnet/minecraft/class_6748;
      official p Ldyk;p:Ldzi;
    • cachedBlendAlphaDensityFunction

      private final ChunkNoiseSampler.FlatCache cachedBlendAlphaDensityFunction
      Mappings:
      Namespace Name Mixin selector
      named cachedBlendAlphaDensityFunction Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cachedBlendAlphaDensityFunction:Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler$FlatCache;
      intermediary field_36585 Lnet/minecraft/class_6568;field_36585:Lnet/minecraft/class_6568$class_6951;
      official q Ldyk;q:Ldyk$g;
    • cachedBlendOffsetDensityFunction

      private final ChunkNoiseSampler.FlatCache cachedBlendOffsetDensityFunction
      Mappings:
      Namespace Name Mixin selector
      named cachedBlendOffsetDensityFunction Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cachedBlendOffsetDensityFunction:Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler$FlatCache;
      intermediary field_36586 Lnet/minecraft/class_6568;field_36586:Lnet/minecraft/class_6568$class_6951;
      official r Ldyk;r:Ldyk$g;
    • beardifying

      private final DensityFunctionTypes.Beardifying beardifying
      Mappings:
      Namespace Name Mixin selector
      named beardifying Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;beardifying:Lnet/minecraft/world/gen/densityfunction/DensityFunctionTypes$Beardifying;
      intermediary field_37113 Lnet/minecraft/class_6568;field_37113:Lnet/minecraft/class_6916$class_7050;
      official s Ldyk;s:Ldya$c;
    • lastBlendingColumnPos

      private long lastBlendingColumnPos
      Mappings:
      Namespace Name Mixin selector
      named lastBlendingColumnPos Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;lastBlendingColumnPos:J
      intermediary field_36587 Lnet/minecraft/class_6568;field_36587:J
      official t Ldyk;t:J
    • lastBlendingResult

      private Blender.BlendResult lastBlendingResult
      Mappings:
      Namespace Name Mixin selector
      named lastBlendingResult Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;lastBlendingResult:Lnet/minecraft/world/gen/chunk/Blender$BlendResult;
      intermediary field_36588 Lnet/minecraft/class_6568;field_36588:Lnet/minecraft/class_6748$class_6956;
      official u Ldyk;u:Ldzi$a;
    • horizontalBiomeEnd

      final int horizontalBiomeEnd
      Mappings:
      Namespace Name Mixin selector
      named horizontalBiomeEnd Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;horizontalBiomeEnd:I
      intermediary field_36589 Lnet/minecraft/class_6568;field_36589:I
      official v Ldyk;v:I
    • horizontalCellBlockCount

      final int horizontalCellBlockCount
      Mappings:
      Namespace Name Mixin selector
      named horizontalCellBlockCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;horizontalCellBlockCount:I
      intermediary field_36590 Lnet/minecraft/class_6568;field_36590:I
      official w Ldyk;w:I
    • verticalCellBlockCount

      final int verticalCellBlockCount
      Mappings:
      Namespace Name Mixin selector
      named verticalCellBlockCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;verticalCellBlockCount:I
      intermediary field_36591 Lnet/minecraft/class_6568;field_36591:I
      official x Ldyk;x:I
    • isInInterpolationLoop

      boolean isInInterpolationLoop
      Mappings:
      Namespace Name Mixin selector
      named isInInterpolationLoop Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;isInInterpolationLoop:Z
      intermediary field_36592 Lnet/minecraft/class_6568;field_36592:Z
      official y Ldyk;y:Z
    • isSamplingForCaches

      boolean isSamplingForCaches
      Mappings:
      Namespace Name Mixin selector
      named isSamplingForCaches Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;isSamplingForCaches:Z
      intermediary field_36593 Lnet/minecraft/class_6568;field_36593:Z
      official z Ldyk;z:Z
    • startBlockX

      private int startBlockX
      Mappings:
      Namespace Name Mixin selector
      named startBlockX Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startBlockX:I
      intermediary field_36594 Lnet/minecraft/class_6568;field_36594:I
      official A Ldyk;A:I
    • startBlockY

      int startBlockY
      Mappings:
      Namespace Name Mixin selector
      named startBlockY Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startBlockY:I
      intermediary field_36572 Lnet/minecraft/class_6568;field_36572:I
      official B Ldyk;B:I
    • startBlockZ

      private int startBlockZ
      Mappings:
      Namespace Name Mixin selector
      named startBlockZ Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;startBlockZ:I
      intermediary field_36573 Lnet/minecraft/class_6568;field_36573:I
      official C Ldyk;C:I
    • cellBlockX

      int cellBlockX
      Mappings:
      Namespace Name Mixin selector
      named cellBlockX Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cellBlockX:I
      intermediary field_36574 Lnet/minecraft/class_6568;field_36574:I
      official D Ldyk;D:I
    • cellBlockY

      int cellBlockY
      Mappings:
      Namespace Name Mixin selector
      named cellBlockY Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cellBlockY:I
      intermediary field_36575 Lnet/minecraft/class_6568;field_36575:I
      official E Ldyk;E:I
    • cellBlockZ

      int cellBlockZ
      Mappings:
      Namespace Name Mixin selector
      named cellBlockZ Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cellBlockZ:I
      intermediary field_36576 Lnet/minecraft/class_6568;field_36576:I
      official F Ldyk;F:I
    • sampleUniqueIndex

      long sampleUniqueIndex
      Mappings:
      Namespace Name Mixin selector
      named sampleUniqueIndex Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;sampleUniqueIndex:J
      intermediary field_36577 Lnet/minecraft/class_6568;field_36577:J
      official G Ldyk;G:J
    • cacheOnceUniqueIndex

      long cacheOnceUniqueIndex
      Mappings:
      Namespace Name Mixin selector
      named cacheOnceUniqueIndex Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;cacheOnceUniqueIndex:J
      intermediary field_36578 Lnet/minecraft/class_6568;field_36578:J
      official H Ldyk;H:J
    • index

      int index
      Mappings:
      Namespace Name Mixin selector
      named index Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;index:I
      intermediary field_36579 Lnet/minecraft/class_6568;field_36579:I
      official I Ldyk;I:I
    • interpolationEachApplier

      private final DensityFunction.EachApplier interpolationEachApplier
      The implementation of EachApplier that is used for filling the interpolators' density buffers.

      It runs on a vertical column of cells, with the density being sampled at the first block in the cell (cell-local coordinate 0 for X, Y and Z).

      Mappings:
      Namespace Name Mixin selector
      named interpolationEachApplier Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;interpolationEachApplier:Lnet/minecraft/world/gen/densityfunction/DensityFunction$EachApplier;
      intermediary field_36580 Lnet/minecraft/class_6568;field_36580:Lnet/minecraft/class_6910$class_6911;
      official J Ldyk;J:Ldxz$a;
  • Constructor Details

    • ChunkNoiseSampler

      public ChunkNoiseSampler(int horizontalCellCount, NoiseConfig noiseConfig, int startBlockX, int startBlockZ, GenerationShapeConfig generationShapeConfig, DensityFunctionTypes.Beardifying beardifying, ChunkGeneratorSettings chunkGeneratorSettings, AquiferSampler.FluidLevelSampler fluidLevelSampler, Blender blender)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;<init>(ILnet/minecraft/world/gen/noise/NoiseConfig;IILnet/minecraft/world/gen/chunk/GenerationShapeConfig;Lnet/minecraft/world/gen/densityfunction/DensityFunctionTypes$Beardifying;Lnet/minecraft/world/gen/chunk/ChunkGeneratorSettings;Lnet/minecraft/world/gen/chunk/AquiferSampler$FluidLevelSampler;Lnet/minecraft/world/gen/chunk/Blender;)V
      intermediary <init> Lnet/minecraft/class_6568;<init>(ILnet/minecraft/class_7138;IILnet/minecraft/class_5309;Lnet/minecraft/class_6916$class_7050;Lnet/minecraft/class_5284;Lnet/minecraft/class_6350$class_6565;Lnet/minecraft/class_6748;)V
      official <init> Ldyk;<init>(ILdyu;IILdyo;Ldya$c;Ldyl;Ldxs$a;Ldzi;)V
  • Method Details

    • create

      public static ChunkNoiseSampler create(Chunk chunk, NoiseConfig noiseConfig, DensityFunctionTypes.Beardifying beardifying, ChunkGeneratorSettings chunkGeneratorSettings, AquiferSampler.FluidLevelSampler fluidLevelSampler, Blender blender)
      Mappings:
      Namespace Name Mixin selector
      named create Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;create(Lnet/minecraft/world/chunk/Chunk;Lnet/minecraft/world/gen/noise/NoiseConfig;Lnet/minecraft/world/gen/densityfunction/DensityFunctionTypes$Beardifying;Lnet/minecraft/world/gen/chunk/ChunkGeneratorSettings;Lnet/minecraft/world/gen/chunk/AquiferSampler$FluidLevelSampler;Lnet/minecraft/world/gen/chunk/Blender;)Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;
      intermediary method_39543 Lnet/minecraft/class_6568;method_39543(Lnet/minecraft/class_2791;Lnet/minecraft/class_7138;Lnet/minecraft/class_6916$class_7050;Lnet/minecraft/class_5284;Lnet/minecraft/class_6350$class_6565;Lnet/minecraft/class_6748;)Lnet/minecraft/class_6568;
      official a Ldyk;a(Lduh;Ldyu;Ldya$c;Ldyl;Ldxs$a;Ldzi;)Ldyk;
    • createMultiNoiseSampler

      protected MultiNoiseUtil.MultiNoiseSampler createMultiNoiseSampler(NoiseRouter noiseRouter, List<MultiNoiseUtil.NoiseHypercube> spawnTarget)
      Mappings:
      Namespace Name Mixin selector
      named createMultiNoiseSampler Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;createMultiNoiseSampler(Lnet/minecraft/world/gen/noise/NoiseRouter;Ljava/util/List;)Lnet/minecraft/world/biome/source/util/MultiNoiseUtil$MultiNoiseSampler;
      intermediary method_40531 Lnet/minecraft/class_6568;method_40531(Lnet/minecraft/class_6953;Ljava/util/List;)Lnet/minecraft/class_6544$class_6552;
      official a Ldyk;a(Ldym;Ljava/util/List;)Lddp$f;
    • sampleBlockState

      @Nullable protected @Nullable BlockState sampleBlockState()
      Mappings:
      Namespace Name Mixin selector
      named sampleBlockState Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;sampleBlockState()Lnet/minecraft/block/BlockState;
      intermediary method_40536 Lnet/minecraft/class_6568;method_40536()Lnet/minecraft/class_2680;
      official e Ldyk;e()Ldsl;
    • blockX

      public int blockX()
      Specified by:
      blockX in interface DensityFunction.NoisePos
      Mappings:
      Namespace Name Mixin selector
      named blockX Lnet/minecraft/world/gen/densityfunction/DensityFunction$NoisePos;blockX()I
      intermediary comp_371 Lnet/minecraft/class_6910$class_6912;comp_371()I
      official a Ldxz$b;a()I
    • blockY

      public int blockY()
      Specified by:
      blockY in interface DensityFunction.NoisePos
      Mappings:
      Namespace Name Mixin selector
      named blockY Lnet/minecraft/world/gen/densityfunction/DensityFunction$NoisePos;blockY()I
      intermediary comp_372 Lnet/minecraft/class_6910$class_6912;comp_372()I
      official b Ldxz$b;b()I
    • blockZ

      public int blockZ()
      Specified by:
      blockZ in interface DensityFunction.NoisePos
      Mappings:
      Namespace Name Mixin selector
      named blockZ Lnet/minecraft/world/gen/densityfunction/DensityFunction$NoisePos;blockZ()I
      intermediary comp_373 Lnet/minecraft/class_6910$class_6912;comp_373()I
      official c Ldxz$b;c()I
    • estimateSurfaceHeight

      public int estimateSurfaceHeight(int blockX, int blockZ)
      Mappings:
      Namespace Name Mixin selector
      named estimateSurfaceHeight Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;estimateSurfaceHeight(II)I
      intermediary method_39900 Lnet/minecraft/class_6568;method_39900(II)I
      official a Ldyk;a(II)I
    • calculateSurfaceHeightEstimate

      private int calculateSurfaceHeightEstimate(long columnPos)
      Mappings:
      Namespace Name Mixin selector
      named calculateSurfaceHeightEstimate Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;calculateSurfaceHeightEstimate(J)I
      intermediary method_39899 Lnet/minecraft/class_6568;method_39899(J)I
      official a Ldyk;a(J)I
    • getBlender

      public Blender getBlender()
      Specified by:
      getBlender in interface DensityFunction.NoisePos
      Mappings:
      Namespace Name Mixin selector
      named getBlender Lnet/minecraft/world/gen/densityfunction/DensityFunction$NoisePos;getBlender()Lnet/minecraft/world/gen/chunk/Blender;
      intermediary method_39327 Lnet/minecraft/class_6910$class_6912;method_39327()Lnet/minecraft/class_6748;
      official d Ldxz$b;d()Ldzi;
    • sampleDensity

      private void sampleDensity(boolean start, int cellX)
      Samples the density values for all cells in the chunk with the given X coordinate. This is done for every interpolated function.
      Parameters:
      start - whether to store the results in the start or end density buffer
      cellX - the current cell X coordinate
      Mappings:
      Namespace Name Mixin selector
      named sampleDensity Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;sampleDensity(ZI)V
      intermediary method_40532 Lnet/minecraft/class_6568;method_40532(ZI)V
      official a Ldyk;a(ZI)V
    • sampleStartDensity

      public void sampleStartDensity()
      Samples the density values for all cells in the chunk with the first X coordinate. This is done for every interpolated function. The resulting density values will be stored in the interpolator's start density buffer.
      Mappings:
      Namespace Name Mixin selector
      named sampleStartDensity Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;sampleStartDensity()V
      intermediary method_38336 Lnet/minecraft/class_6568;method_38336()V
      official f Ldyk;f()V
    • sampleEndDensity

      public void sampleEndDensity(int cellX)
      Samples the density values for all cells in the chunk with the given X coordinate. This is done for every interpolated function. The resulting density values will be stored in the interpolator's end density buffer.
      Parameters:
      cellX - the chunk-local cell X coordinate
      Mappings:
      Namespace Name Mixin selector
      named sampleEndDensity Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;sampleEndDensity(I)V
      intermediary method_38339 Lnet/minecraft/class_6568;method_38339(I)V
      official b Ldyk;b(I)V
    • at

      public ChunkNoiseSampler at(int int2)
      Description copied from interface: DensityFunction.EachApplier
      Returns the block position at a specific index of the density array.

      If you want to manually iterate the array and call DensityFunction.sample(net.minecraft.world.gen.densityfunction.DensityFunction.NoisePos) to set the individual elements in an implementation of DensityFunction.fill(double[], net.minecraft.world.gen.densityfunction.DensityFunction.EachApplier), this method can be used to get the block position required for that.

      Specified by:
      at in interface DensityFunction.EachApplier
      Returns:
      the block position at a specific index of the density array
      Mappings:
      Namespace Name Mixin selector
      named at Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;at(I)Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;
      intermediary method_40534 Lnet/minecraft/class_6568;method_40534(I)Lnet/minecraft/class_6568;
      official c Ldyk;c(I)Ldyk;
    • fill

      public void fill(double[] densities, DensityFunction densityFunction)
      Fills the density array using a density function.
      Specified by:
      fill in interface DensityFunction.EachApplier
      Implementation Note:
      This can have side effects.
      Mappings:
      Namespace Name Mixin selector
      named fill Lnet/minecraft/world/gen/densityfunction/DensityFunction$EachApplier;fill([DLnet/minecraft/world/gen/densityfunction/DensityFunction;)V
      intermediary method_40478 Lnet/minecraft/class_6910$class_6911;method_40478([DLnet/minecraft/class_6910;)V
      official a Ldxz$a;a([DLdxz;)V
    • onSampledCellCorners

      public void onSampledCellCorners(int cellY, int cellZ)
      This should be called when the start and end density buffers are correctly filled for the current cell.

      This starts the interpolators and fills the cell caches.

      Parameters:
      cellY - the chunk-local cell Y coordinate
      cellZ - the chunk-local cell Z coordinate
      Implementation Note:
      For filling the cell caches, this is used as the EachApplier.
      Mappings:
      Namespace Name Mixin selector
      named onSampledCellCorners Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;onSampledCellCorners(II)V
      intermediary method_38362 Lnet/minecraft/class_6568;method_38362(II)V
      official b Ldyk;b(II)V
    • interpolateY

      public void interpolateY(int blockY, double deltaY)
      Interpolates density values on the Y axis for every interpolator.
      Parameters:
      blockY - the absolute block Y coordinate
      deltaY - the cell-local block Y coordinate divided by the number of blocks in a cell vertically
      Mappings:
      Namespace Name Mixin selector
      named interpolateY Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;interpolateY(ID)V
      intermediary method_38337 Lnet/minecraft/class_6568;method_38337(ID)V
      official a Ldyk;a(ID)V
    • interpolateX

      public void interpolateX(int blockX, double deltaX)
      Interpolates density values on the X axis for every interpolator.
      Parameters:
      blockX - the absolute block X coordinate
      deltaX - the cell-local block X coordinate divided by the number of blocks in a cell horizontally
      Mappings:
      Namespace Name Mixin selector
      named interpolateX Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;interpolateX(ID)V
      intermediary method_38349 Lnet/minecraft/class_6568;method_38349(ID)V
      official b Ldyk;b(ID)V
    • interpolateZ

      public void interpolateZ(int blockZ, double deltaZ)
      Interpolates density values on the Z axis for every interpolator.
      Parameters:
      blockZ - the absolute block Z coordinate
      deltaZ - the cell-local block Z coordinate divided by the number of blocks in a cell vertically
      Mappings:
      Namespace Name Mixin selector
      named interpolateZ Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;interpolateZ(ID)V
      intermediary method_38355 Lnet/minecraft/class_6568;method_38355(ID)V
      official c Ldyk;c(ID)V
    • stopInterpolation

      public void stopInterpolation()
      Stops the interpolation loop for this chunk.
      Mappings:
      Namespace Name Mixin selector
      named stopInterpolation Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;stopInterpolation()V
      intermediary method_40537 Lnet/minecraft/class_6568;method_40537()V
      official g Ldyk;g()V
    • swapBuffers

      public void swapBuffers()
      Swaps the start and end density buffers of every interpolator.
      Mappings:
      Namespace Name Mixin selector
      named swapBuffers Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;swapBuffers()V
      intermediary method_38348 Lnet/minecraft/class_6568;method_38348()V
      official h Ldyk;h()V
    • getAquiferSampler

      public AquiferSampler getAquiferSampler()
      Mappings:
      Namespace Name Mixin selector
      named getAquiferSampler Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;getAquiferSampler()Lnet/minecraft/world/gen/chunk/AquiferSampler;
      intermediary method_38354 Lnet/minecraft/class_6568;method_38354()Lnet/minecraft/class_6350;
      official i Ldyk;i()Ldxs;
    • getHorizontalCellBlockCount

      protected int getHorizontalCellBlockCount()
      Mappings:
      Namespace Name Mixin selector
      named getHorizontalCellBlockCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;getHorizontalCellBlockCount()I
      intermediary method_42361 Lnet/minecraft/class_6568;method_42361()I
      official j Ldyk;j()I
    • getVerticalCellBlockCount

      protected int getVerticalCellBlockCount()
      Mappings:
      Namespace Name Mixin selector
      named getVerticalCellBlockCount Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;getVerticalCellBlockCount()I
      intermediary method_42362 Lnet/minecraft/class_6568;method_42362()I
      official k Ldyk;k()I
    • calculateBlendResult

      Blender.BlendResult calculateBlendResult(int blockX, int blockZ)
      Mappings:
      Namespace Name Mixin selector
      named calculateBlendResult Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;calculateBlendResult(II)Lnet/minecraft/world/gen/chunk/Blender$BlendResult;
      intermediary method_40535 Lnet/minecraft/class_6568;method_40535(II)Lnet/minecraft/class_6748$class_6956;
      official c Ldyk;c(II)Ldzi$a;
    • getActualDensityFunction

      protected DensityFunction getActualDensityFunction(DensityFunction function)
      Returns the actual density function for a given density function.

      The classes in DensityFunctionTypes for caches, interpolators, blend_alpha and blend_offset use simple stub implementations that get replaced with their actual implementation by calling this method.

      Parameters:
      function - the density function to get an actual implementation for
      Returns:
      the actual density function for a given density function
      Mappings:
      Namespace Name Mixin selector
      named getActualDensityFunction Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;getActualDensityFunction(Lnet/minecraft/world/gen/densityfunction/DensityFunction;)Lnet/minecraft/world/gen/densityfunction/DensityFunction;
      intermediary method_40529 Lnet/minecraft/class_6568;method_40529(Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910;
      official a Ldyk;a(Ldxz;)Ldxz;
    • getActualDensityFunctionImpl

      private DensityFunction getActualDensityFunctionImpl(DensityFunction function)
      Returns the actual density function for a given density function.
      Returns:
      the actual density function for a given density function
      Mappings:
      Namespace Name Mixin selector
      named getActualDensityFunctionImpl Lnet/minecraft/world/gen/chunk/ChunkNoiseSampler;getActualDensityFunctionImpl(Lnet/minecraft/world/gen/densityfunction/DensityFunction;)Lnet/minecraft/world/gen/densityfunction/DensityFunction;
      intermediary method_40533 Lnet/minecraft/class_6568;method_40533(Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910;
      official b Ldyk;b(Ldxz;)Ldxz;