类 SkyLightEngine
java.lang.Object
net.minecraft.world.level.lighting.LightEngine<SkyLightSectionStorage.SkyDataLayerStorageMap,SkyLightSectionStorage>
net.minecraft.world.level.lighting.SkyLightEngine
- 所有已实现的接口:
LayerLightEventListener
,LightEventListener
public final class SkyLightEngine
extends LightEngine<SkyLightSectionStorage.SkyDataLayerStorageMap,SkyLightSectionStorage>
-
嵌套类概要
从类继承的嵌套类/接口 net.minecraft.world.level.lighting.LightEngine
LightEngine.QueueEntry
从接口继承的嵌套类/接口 net.minecraft.world.level.lighting.LayerLightEventListener
LayerLightEventListener.DummyLightLayerEventListener
-
字段概要
字段修饰符和类型字段说明private static final long
private final ChunkSkyLightSources
private final BlockPos.MutableBlockPos
private static final long
private static final long
从类继承的字段 net.minecraft.world.level.lighting.LightEngine
chunkSource, MAX_LEVEL, MIN_OPACITY, PROPAGATION_DIRECTIONS, PULL_LIGHT_IN_ENTRY, storage
-
构造器概要
构造器限定符构造器说明SkyLightEngine
(LightChunkGetter pChunkSource) protected
SkyLightEngine
(LightChunkGetter pChunkSource, SkyLightSectionStorage pSectionStorage) -
方法概要
修饰符和类型方法说明private void
addSourcesAbove
(int pX, int pZ, int pMaxY, int pBottomSectionY) protected void
checkNode
(long pLevelPos) private int
countEmptySectionsBelowIfAtBorder
(long pPackedPos) private static boolean
crossedSectionEdge
(Direction pDirection, int pX, int pZ) private ChunkSkyLightSources
getChunkSources
(int pChunkX, int pChunkZ) private int
getLowestSourceY
(int pX, int pZ, int pDefaultReturnValue) private static boolean
isSourceLevel
(int pLevel) protected void
propagateDecrease
(long pPackedPos, long pLightLevel) private void
propagateFromEmptySections
(long pPackedPos, Direction pDirection, int pLevel, boolean pShouldIncrease, int pEmptySections) protected void
propagateIncrease
(long pPackedPos, long pQueueEntry, int pLightLevel) void
propagateLightSources
(ChunkPos pChunkPos) private void
removeSourcesBelow
(int pX, int pZ, int pMinY, int pBottomSectionY) void
setLightEnabled
(ChunkPos pChunkPos, boolean pLightEnabled) private void
updateSourcesInColumn
(int pX, int pZ, int pLowestY) 从类继承的方法 net.minecraft.world.level.lighting.LightEngine
checkBlock, enqueueDecrease, enqueueIncrease, getChunk, getDataLayerData, getDebugData, getDebugSectionType, getLightBlockInto, getLightValue, getOcclusionShape, getOcclusionShape, getOpacity, getState, hasDifferentLightProperties, hasLightWork, isEmptyShape, queueSectionData, retainData, runLightUpdates, shapeOccludes, updateSectionStatus
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口继承的方法 net.minecraft.world.level.lighting.LightEventListener
updateSectionStatus
-
字段详细资料
-
REMOVE_TOP_SKY_SOURCE_ENTRY
private static final long REMOVE_TOP_SKY_SOURCE_ENTRY -
REMOVE_SKY_SOURCE_ENTRY
private static final long REMOVE_SKY_SOURCE_ENTRY -
ADD_SKY_SOURCE_ENTRY
private static final long ADD_SKY_SOURCE_ENTRY -
mutablePos
-
emptyChunkSources
-
-
构造器详细资料
-
SkyLightEngine
-
SkyLightEngine
@VisibleForTesting protected SkyLightEngine(LightChunkGetter pChunkSource, SkyLightSectionStorage pSectionStorage)
-
-
方法详细资料
-
isSourceLevel
private static boolean isSourceLevel(int pLevel) -
getLowestSourceY
private int getLowestSourceY(int pX, int pZ, int pDefaultReturnValue) -
getChunkSources
-
checkNode
protected void checkNode(long pLevelPos) -
updateSourcesInColumn
private void updateSourcesInColumn(int pX, int pZ, int pLowestY) -
removeSourcesBelow
private void removeSourcesBelow(int pX, int pZ, int pMinY, int pBottomSectionY) -
addSourcesAbove
private void addSourcesAbove(int pX, int pZ, int pMaxY, int pBottomSectionY) -
propagateIncrease
protected void propagateIncrease(long pPackedPos, long pQueueEntry, int pLightLevel) -
propagateDecrease
protected void propagateDecrease(long pPackedPos, long pLightLevel) -
countEmptySectionsBelowIfAtBorder
private int countEmptySectionsBelowIfAtBorder(long pPackedPos) -
propagateFromEmptySections
private void propagateFromEmptySections(long pPackedPos, Direction pDirection, int pLevel, boolean pShouldIncrease, int pEmptySections) -
crossedSectionEdge
-
setLightEnabled
-
propagateLightSources
-