Class NoiseChunk
java.lang.Object
net.minecraft.world.level.levelgen.NoiseChunk
- All Implemented Interfaces:
DensityFunction.ContextProvider, DensityFunction.FunctionContext
public class NoiseChunk
extends Object
implements DensityFunction.FunctionContext, DensityFunction.ContextProvider
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate classprivate classstatic interfaceprivate static classprivate classprivate classprivate classprivate static interfaceclass -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Aquiferprivate intprivate longprivate final DensityFunctions.BeardifierOrMarkerprivate final NoiseChunk.FlatCacheprivate final Blenderprivate final NoiseChunk.FlatCacheprivate final NoiseChunk.BlockStateFillerprivate final List<NoiseChunk.CacheAllInCell> private final intprivate final intprivate final intprivate final intprivate intprivate intprivate intprivate final intprivate booleanprivate final intprivate final intprivate final intprivate final intprivate intprivate intprivate intprivate booleanprivate longprivate final List<NoiseChunk.NoiseInterpolator> private longprivate Blender.BlendingOutputprivate final intprivate final DensityFunctionprivate final it.unimi.dsi.fastutil.longs.Long2IntMapprivate final DensityFunction.ContextProviderprivate final Map<DensityFunction, DensityFunction> -
Constructor Summary
ConstructorsConstructorDescriptionNoiseChunk(int cellCountXZ, RandomState randomState, int chunkMinBlockX, int chunkMinBlockZ, NoiseSettings noiseSettings, DensityFunctions.BeardifierOrMarker beardifier, NoiseGeneratorSettings settings, Aquifer.FluidPicker globalFluidPicker, Blender blender) -
Method Summary
Modifier and TypeMethodDescriptionvoidadvanceCellX(int cellXIndex) aquifer()intblockX()intblockY()intblockZ()protected Climate.SamplercachedClimateSampler(NoiseRouter noises, List<Climate.ParameterPoint> spawnTarget) protected intprotected intprivate intcomputePreliminarySurfaceLevel(long key) voidfillAllDirectly(double[] output, DensityFunction function) private voidfillSlice(boolean slice0, int cellX) static NoiseChunkforChunk(ChunkAccess chunk, RandomState randomState, DensityFunctions.BeardifierOrMarker beardifier, NoiseGeneratorSettings settings, Aquifer.FluidPicker globalFluidPicker, Blender blender) forIndex(int cellIndex) protected @Nullable BlockStateprivate Blender.BlendingOutputgetOrComputeBlendingOutput(int blockX, int blockZ) voidintmaxPreliminarySurfaceLevel(int minBlockX, int minBlockZ, int maxBlockX, int maxBlockZ) intpreliminarySurfaceLevel(int sampleX, int sampleZ) voidselectCellYZ(int cellYIndex, int cellZIndex) voidvoidvoidupdateForX(int posX, double factorX) voidupdateForY(int posY, double factorY) voidupdateForZ(int posZ, double factorZ) protected DensityFunctionwrap(DensityFunction function) private DensityFunctionwrapNew(DensityFunction function)
-
Field Details
-
cellCountXZ
private final int cellCountXZ -
cellCountY
private final int cellCountY -
cellNoiseMinY
private final int cellNoiseMinY -
firstCellX
private final int firstCellX -
firstCellZ
private final int firstCellZ -
firstNoiseX
private final int firstNoiseX -
firstNoiseZ
private final int firstNoiseZ -
interpolators
-
cellCaches
-
wrapped
-
preliminarySurfaceLevelCache
private final it.unimi.dsi.fastutil.longs.Long2IntMap preliminarySurfaceLevelCache -
aquifer
-
preliminarySurfaceLevel
-
blockStateRule
-
blender
-
blendAlpha
-
blendOffset
-
beardifier
-
lastBlendingDataPos
private long lastBlendingDataPos -
lastBlendingOutput
-
noiseSizeXZ
private final int noiseSizeXZ -
cellWidth
private final int cellWidth -
cellHeight
private final int cellHeight -
interpolating
private boolean interpolating -
fillingCell
private boolean fillingCell -
cellStartBlockX
private int cellStartBlockX -
cellStartBlockY
private int cellStartBlockY -
cellStartBlockZ
private int cellStartBlockZ -
inCellX
private int inCellX -
inCellY
private int inCellY -
inCellZ
private int inCellZ -
interpolationCounter
private long interpolationCounter -
arrayInterpolationCounter
private long arrayInterpolationCounter -
arrayIndex
private int arrayIndex -
sliceFillingContextProvider
-
-
Constructor Details
-
NoiseChunk
public NoiseChunk(int cellCountXZ, RandomState randomState, int chunkMinBlockX, int chunkMinBlockZ, NoiseSettings noiseSettings, DensityFunctions.BeardifierOrMarker beardifier, NoiseGeneratorSettings settings, Aquifer.FluidPicker globalFluidPicker, Blender blender)
-
-
Method Details
-
forChunk
public static NoiseChunk forChunk(ChunkAccess chunk, RandomState randomState, DensityFunctions.BeardifierOrMarker beardifier, NoiseGeneratorSettings settings, Aquifer.FluidPicker globalFluidPicker, Blender blender) -
cachedClimateSampler
protected Climate.Sampler cachedClimateSampler(NoiseRouter noises, List<Climate.ParameterPoint> spawnTarget) -
getInterpolatedState
-
blockX
public int blockX()- Specified by:
blockXin interfaceDensityFunction.FunctionContext
-
blockY
public int blockY()- Specified by:
blockYin interfaceDensityFunction.FunctionContext
-
blockZ
public int blockZ()- Specified by:
blockZin interfaceDensityFunction.FunctionContext
-
maxPreliminarySurfaceLevel
public int maxPreliminarySurfaceLevel(int minBlockX, int minBlockZ, int maxBlockX, int maxBlockZ) -
preliminarySurfaceLevel
public int preliminarySurfaceLevel(int sampleX, int sampleZ) -
computePreliminarySurfaceLevel
private int computePreliminarySurfaceLevel(long key) -
getBlender
- Specified by:
getBlenderin interfaceDensityFunction.FunctionContext
-
fillSlice
private void fillSlice(boolean slice0, int cellX) -
initializeForFirstCellX
public void initializeForFirstCellX() -
advanceCellX
public void advanceCellX(int cellXIndex) -
forIndex
- Specified by:
forIndexin interfaceDensityFunction.ContextProvider
-
fillAllDirectly
- Specified by:
fillAllDirectlyin interfaceDensityFunction.ContextProvider
-
selectCellYZ
public void selectCellYZ(int cellYIndex, int cellZIndex) -
updateForY
public void updateForY(int posY, double factorY) -
updateForX
public void updateForX(int posX, double factorX) -
updateForZ
public void updateForZ(int posZ, double factorZ) -
stopInterpolation
public void stopInterpolation() -
swapSlices
public void swapSlices() -
aquifer
-
cellWidth
protected int cellWidth() -
cellHeight
protected int cellHeight() -
getOrComputeBlendingOutput
-
wrap
-
wrapNew
-