net.minecraft.world.level.lighting

public abstract class LightEngine<M extends DataLayerStorageMap<M>, S extends LayerLightSectionStorage<M>>

implements LayerLightEventListener

eto
net.minecraft.world.level.lighting.LightEngine
net.minecraft.class_3558
net.minecraft.world.chunk.light.ChunkLightProvider
net.minecraft.world.level.lighting.LightEngine

Field summary

Modifier and TypeField
public static final int
a
MAX_LEVEL
field_44729
field_44729
protected static final int
b
MIN_OPACITY
field_44730
field_44730
protected static final long
c
PULL_LIGHT_IN_ENTRY
field_44731
field_44731
private static final int
g
MIN_QUEUE_SIZE
field_44732
field_44732
protected static final Direction[]
d
PROPAGATION_DIRECTIONS
field_16513
DIRECTIONS
protected final LightChunkGetter
e
chunkSource
field_15795
chunkProvider
protected final S
f
storage
field_15793
lightStorage
private final it.unimi.dsi.fastutil.longs.LongOpenHashSet
h
blockNodesToCheck
field_44733
blockPositionsToCheck
private final it.unimi.dsi.fastutil.longs.LongArrayFIFOQueue
i
decreaseQueue
field_44734
field_44734
private final it.unimi.dsi.fastutil.longs.LongArrayFIFOQueue
j
increaseQueue
field_44735
field_44735
private static final int
k
CACHE_SIZE
field_31709
field_31709
private final long[]
l
lastChunkPos
field_17397
cachedChunkPositions
private final LightChunk[]
m
lastChunk
field_17398
cachedChunks

Constructor summary

ModifierConstructor
protected (LightChunkGetter chunkProvider, S lightStorage)

Method summary

Modifier and TypeMethod
public static boolean
a(dxv arg0, dxv arg1)
hasDifferentLightProperties(BlockState arg0, BlockState arg1)
method_51561(class_2680 arg0, class_2680 arg1)
needsLightUpdate(BlockState oldState, BlockState newState)
public static int
a(dxv arg0, dxv arg1, jm arg2, int arg3)
getLightBlockInto(BlockState arg0, BlockState arg1, Direction arg2, int arg3)
method_20049(class_2680 arg0, class_2680 arg1, class_2350 arg2, int arg3)
getRealisticOpacity(BlockState state1, BlockState state2, Direction direction, int opacity2)
public static VoxelShape
a(dxv arg0, jm arg1)
getOcclusionShape(BlockState arg0, Direction arg1)
method_51562(class_2680 arg0, class_2350 arg1)
getOpaqueShape(BlockState state, Direction direction)
protected static boolean
a(dxv arg0)
isEmptyShape(BlockState arg0)
method_51563(class_2680 arg0)
isTrivialForLighting(BlockState blockState)
protected BlockState
c(jh arg0)
getState(BlockPos arg0)
method_50018(class_2338 arg0)
getStateForLighting(BlockPos pos)
protected int
b(dxv arg0)
getOpacity(BlockState arg0)
method_50017(class_2680 arg0)
getOpacity(BlockState state)
protected boolean
a(dxv arg0, dxv arg1, jm arg2)
shapeOccludes(BlockState arg0, BlockState arg1, Direction arg2)
method_50016(class_2680 arg0, class_2680 arg1, class_2350 arg2)
shapesCoverFullCube(BlockState source, BlockState target, Direction direction)
protected LightChunk
a(int arg0, int arg1)
getChunk(int arg0, int arg1)
method_17529(int arg0, int arg1)
getChunk(int chunkX, int chunkZ)
private void
c()
clearChunkCache()
method_17530()
clearChunkCache()
public void
a(jh arg0)
checkBlock(BlockPos arg0)
method_15513(class_2338 arg0)
checkBlock(BlockPos arg0)
public void
a(long arg0, dzv arg1)
queueSectionData(long arg0, DataLayer arg1)
method_15515(long arg0, class_2804 arg1)
enqueueSectionData(long sectionPos, ChunkNibbleArray lightArray)
public void
b(dgo arg0, boolean arg1)
retainData(ChunkPos arg0, boolean arg1)
method_20599(class_1923 arg0, boolean arg1)
setRetainColumn(ChunkPos pos, boolean retainData)
public void
a(kj arg0, boolean arg1)
updateSectionStatus(SectionPos arg0, boolean arg1)
method_15551(class_4076 arg0, boolean arg1)
setSectionStatus(ChunkSectionPos arg0, boolean arg1)
public void
a(dgo arg0, boolean arg1)
setLightEnabled(ChunkPos arg0, boolean arg1)
method_15512(class_1923 arg0, boolean arg1)
setColumnEnabled(ChunkPos arg0, boolean arg1)
public int
a()
runLightUpdates()
method_15516()
doLightUpdates()
private int
d()
propagateIncreases()
method_51567()
method_51567()
private int
e()
propagateDecreases()
method_51570()
method_51570()
protected void
b(long arg0, long arg1)
enqueueDecrease(long arg0, long arg1)
method_51565(long arg0, long arg1)
method_51565(long blockPos, long flags)
protected void
c(long arg0, long arg1)
enqueueIncrease(long arg0, long arg1)
method_51566(long arg0, long arg1)
method_51566(long blockPos, long flags)
public boolean
N_()
hasLightWork()
method_15518()
hasUpdates()
public DataLayer
a(kj arg0)
getDataLayerData(SectionPos arg0)
method_15544(class_4076 arg0)
getLightSection(ChunkSectionPos arg0)
public int
b(jh arg0)
getLightValue(BlockPos arg0)
method_15543(class_2338 arg0)
getLightLevel(BlockPos arg0)
public String
b(long arg0)
getDebugData(long arg0)
method_22875(long arg0)
displaySectionLevel(long sectionPos)
public LayerLightSectionStorage$SectionType
c(long arg0)
getDebugSectionType(long arg0)
method_51568(long arg0)
getStatus(long sectionPos)
protected abstract void
a(long arg0)
checkNode(long arg0)
method_51529(long arg0)
method_51529(long blockPos)
protected abstract void
a(long arg0, long arg1, int arg2)
propagateIncrease(long arg0, long arg1, int arg2)
method_51531(long arg0, long arg1, int arg2)
method_51531(long blockPos, long arg1, int lightLevel)
protected abstract void
a(long arg0, long arg1)
propagateDecrease(long arg0, long arg1)
method_51530(long arg0, long arg1)
method_51530(long blockPos, long arg1)