Interface DensityFunction
- All Known Subinterfaces:
ChunkNoiseSampler.ParentedNoiseType,DensityFunction.Base,DensityFunctionTypes.Beardifying,DensityFunctionTypes.BinaryOperationLike,DensityFunctionTypes.Offset,DensityFunctionTypes.Positional,DensityFunctionTypes.Unary,DensityFunctionTypes.Wrapper
- All Known Implementing Classes:
ChunkNoiseSampler.BlendAlphaDensityFunction,ChunkNoiseSampler.BlendOffsetDensityFunction,ChunkNoiseSampler.Cache2D,ChunkNoiseSampler.CacheOnce,ChunkNoiseSampler.CellCache,ChunkNoiseSampler.DensityInterpolator,ChunkNoiseSampler.FlatCache,DensityFunctionTypes.Beardifier,DensityFunctionTypes.BinaryOperation,DensityFunctionTypes.BlendAlpha,DensityFunctionTypes.BlendDensity,DensityFunctionTypes.BlendOffset,DensityFunctionTypes.Clamp,DensityFunctionTypes.Constant,DensityFunctionTypes.EndIslands,DensityFunctionTypes.LinearOperation,DensityFunctionTypes.Noise,DensityFunctionTypes.RangeChoice,DensityFunctionTypes.RegistryEntryHolder,DensityFunctionTypes.Shift,DensityFunctionTypes.ShiftA,DensityFunctionTypes.ShiftB,DensityFunctionTypes.ShiftedNoise,DensityFunctionTypes.Spline,DensityFunctionTypes.UnaryOperation,DensityFunctionTypes.WeirdScaledSampler,DensityFunctionTypes.Wrapping,DensityFunctionTypes.YClampedGradient,InterpolatedNoiseSampler,StructureWeightSampler
public interface DensityFunction
Represents a function that maps from a block position to a density value.
It can be defined in code or in data packs by using pre-defined function types
like constant values or add, which in turn use other density functions
to define their operands.
- Mappings:
Namespace Name official dhaintermediary net/minecraft/class_6910named net/minecraft/world/gen/densityfunction/DensityFunction
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceRepresents a density function that has no other density functions as an argument, and provides default implementations ofDensityFunction.Base.fill(double[], net.minecraft.world.gen.densityfunction.DensityFunction.EachApplier)andDensityFunction.Base.apply(DensityFunctionVisitor)for this case.static interfacestatic interfaceEachApplieris used to fill an array of densities, like a density buffer or cache, with values from a density function.static final recordstatic interfaceNoisePosrepresents the absolute block position that is passed to density functions.static final record -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final com.mojang.serialization.Codec<DensityFunction>static final com.mojang.serialization.Codec<DensityFunction>static final com.mojang.serialization.Codec<RegistryEntry<DensityFunction>> -
Method Summary
Modifier and TypeMethodDescriptiondefault DensityFunctionabs()Applies the visitor to every child density function andthis.default DensityFunctionclamp(double min, double max) default DensityFunctioncube()voidfill(double[] densities, DensityFunction.EachApplier applier) Fills an array of densities usingthisdensity function and theDensityFunction.EachApplier.CodecHolder<? extends DensityFunction>default DensityFunctiondoublemaxValue()doubleminValue()default DensityFunctiondoubleReturns the density value for the given block position.default DensityFunctionsquare()default DensityFunctionsqueeze()
-
Field Details
-
CODEC
- Mappings:
Namespace Name Mixin selector official bLdha;b:Lcom/mojang/serialization/Codec;intermediary field_37057Lnet/minecraft/class_6910;field_37057:Lcom/mojang/serialization/Codec;named CODECLnet/minecraft/world/gen/densityfunction/DensityFunction;CODEC:Lcom/mojang/serialization/Codec;
-
REGISTRY_ENTRY_CODEC
- Mappings:
Namespace Name Mixin selector official cLdha;c:Lcom/mojang/serialization/Codec;intermediary field_37058Lnet/minecraft/class_6910;field_37058:Lcom/mojang/serialization/Codec;named REGISTRY_ENTRY_CODECLnet/minecraft/world/gen/densityfunction/DensityFunction;REGISTRY_ENTRY_CODEC:Lcom/mojang/serialization/Codec;
-
FUNCTION_CODEC
- Mappings:
Namespace Name Mixin selector official dLdha;d:Lcom/mojang/serialization/Codec;intermediary field_37059Lnet/minecraft/class_6910;field_37059:Lcom/mojang/serialization/Codec;named FUNCTION_CODECLnet/minecraft/world/gen/densityfunction/DensityFunction;FUNCTION_CODEC:Lcom/mojang/serialization/Codec;
-
-
Method Details
-
sample
Returns the density value for the given block position.- Parameters:
pos- the block position- Returns:
- the density value for the given block position
- Mappings:
Namespace Name Mixin selector official aLdha;a(Ldha$b;)Dintermediary method_40464Lnet/minecraft/class_6910;method_40464(Lnet/minecraft/class_6910$class_6912;)Dnamed sampleLnet/minecraft/world/gen/densityfunction/DensityFunction;sample(Lnet/minecraft/world/gen/densityfunction/DensityFunction$NoisePos;)D
-
fill
Fills an array of densities usingthisdensity function and theDensityFunction.EachApplier.- Parameters:
densities- the array of densities to fill, like a buffer or a cacheapplier- theEachApplierto use. It has a method for filling the array, as well as to get a block position for an index- Mappings:
Namespace Name Mixin selector official aLdha;a([DLdha$a;)Vintermediary method_40470Lnet/minecraft/class_6910;method_40470([DLnet/minecraft/class_6910$class_6911;)Vnamed fillLnet/minecraft/world/gen/densityfunction/DensityFunction;fill([DLnet/minecraft/world/gen/densityfunction/DensityFunction$EachApplier;)V
-
apply
Applies the visitor to every child density function andthis.- Parameters:
visitor- the visitor that should be applied to this density function- Returns:
- the resulting density function
- Mappings:
Namespace Name Mixin selector official aLdha;a(Ldha$f;)Ldha;intermediary method_40469Lnet/minecraft/class_6910;method_40469(Lnet/minecraft/class_6910$class_6915;)Lnet/minecraft/class_6910;named applyLnet/minecraft/world/gen/densityfunction/DensityFunction;apply(Lnet/minecraft/world/gen/densityfunction/DensityFunction$DensityFunctionVisitor;)Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
minValue
double minValue()- Mappings:
Namespace Name Mixin selector official aLdha;a()Dintermediary comp_377Lnet/minecraft/class_6910;comp_377()Dnamed minValueLnet/minecraft/world/gen/densityfunction/DensityFunction;minValue()D
-
maxValue
double maxValue()- Mappings:
Namespace Name Mixin selector official bLdha;b()Dintermediary comp_378Lnet/minecraft/class_6910;comp_378()Dnamed maxValueLnet/minecraft/world/gen/densityfunction/DensityFunction;maxValue()D
-
getCodecHolder
CodecHolder<? extends DensityFunction> getCodecHolder()- Mappings:
Namespace Name Mixin selector official cLdha;c()Laou;intermediary method_41062Lnet/minecraft/class_6910;method_41062()Lnet/minecraft/class_7243;named getCodecHolderLnet/minecraft/world/gen/densityfunction/DensityFunction;getCodecHolder()Lnet/minecraft/util/dynamic/CodecHolder;
-
clamp
- Mappings:
Namespace Name Mixin selector official aLdha;a(DD)Ldha;intermediary method_40468Lnet/minecraft/class_6910;method_40468(DD)Lnet/minecraft/class_6910;named clampLnet/minecraft/world/gen/densityfunction/DensityFunction;clamp(DD)Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
abs
- Mappings:
Namespace Name Mixin selector official dLdha;d()Ldha;intermediary method_40471Lnet/minecraft/class_6910;method_40471()Lnet/minecraft/class_6910;named absLnet/minecraft/world/gen/densityfunction/DensityFunction;abs()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
square
- Mappings:
Namespace Name Mixin selector official eLdha;e()Ldha;intermediary method_40472Lnet/minecraft/class_6910;method_40472()Lnet/minecraft/class_6910;named squareLnet/minecraft/world/gen/densityfunction/DensityFunction;square()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
cube
- Mappings:
Namespace Name Mixin selector official fLdha;f()Ldha;intermediary method_40473Lnet/minecraft/class_6910;method_40473()Lnet/minecraft/class_6910;named cubeLnet/minecraft/world/gen/densityfunction/DensityFunction;cube()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
halfNegative
- Mappings:
Namespace Name Mixin selector official gLdha;g()Ldha;intermediary method_40474Lnet/minecraft/class_6910;method_40474()Lnet/minecraft/class_6910;named halfNegativeLnet/minecraft/world/gen/densityfunction/DensityFunction;halfNegative()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
quarterNegative
- Mappings:
Namespace Name Mixin selector official hLdha;h()Ldha;intermediary method_40475Lnet/minecraft/class_6910;method_40475()Lnet/minecraft/class_6910;named quarterNegativeLnet/minecraft/world/gen/densityfunction/DensityFunction;quarterNegative()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-
squeeze
- Mappings:
Namespace Name Mixin selector official iLdha;i()Ldha;intermediary method_40476Lnet/minecraft/class_6910;method_40476()Lnet/minecraft/class_6910;named squeezeLnet/minecraft/world/gen/densityfunction/DensityFunction;squeeze()Lnet/minecraft/world/gen/densityfunction/DensityFunction;
-