Package net.minecraft.client.renderer
Class LevelRenderer
java.lang.Object
net.minecraft.client.renderer.LevelRenderer
- All Implemented Interfaces:
AutoCloseable
,PreparableReloadListener
,ResourceManagerReloadListener
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface net.minecraft.server.packs.resources.PreparableReloadListener
PreparableReloadListener.PreparationBarrier
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BlockEntityRenderDispatcher
private Frustum
private boolean
private VertexBuffer
protected static final ResourceLocation
private RenderTarget
private int
private Frustum
private VertexBuffer
private final it.unimi.dsi.fastutil.ints.Int2ObjectMap
<BlockDestructionProgress> private final it.unimi.dsi.fastutil.longs.Long2ObjectMap
<SortedSet<BlockDestructionProgress>> static final Direction[]
private static final ResourceLocation
private PostChain
private final EntityRenderDispatcher
private RenderTarget
private static final ResourceLocation
private final RunningTrimmedMean
private final org.joml.Vector4f[]
private final org.joml.Vector3d
private boolean
private final Set
<BlockEntity> Global block entities; these are always rendered, even if off-screen.static final int
private RenderTarget
private int
private int
private int
private int
private ClientLevel
private static final org.slf4j.Logger
private static final int
private final Minecraft
private static final ResourceLocation
private boolean
Neo: Indicates whether outline effect post-processing was requested for the current frame outside of vanilla codepathsprivate RenderTarget
private final Map
<BlockPos, SoundInstance> private double
private double
private double
private double
private double
private Vec3
private CloudStatus
private int
private int
private int
private static final int
private static final ResourceLocation
private static final int
private final float[]
private final float[]
private int
private final RenderBuffers
private int
static final int
private final SectionOcclusionGraph
private SectionRenderDispatcher
private static final float
private VertexBuffer
private static final ResourceLocation
private VertexBuffer
private static final ResourceLocation
private int
private RenderTarget
private PostChain
private static final int
private ViewArea
private final it.unimi.dsi.fastutil.objects.ObjectArrayList
<SectionRenderDispatcher.RenderSection> private RenderTarget
private double
private double
private double
-
Constructor Summary
ConstructorsConstructorDescriptionLevelRenderer
(Minecraft pMinecraft, EntityRenderDispatcher pEntityRenderDispatcher, BlockEntityRenderDispatcher pBlockEntityRenderDispatcher, RenderBuffers pRenderBuffers) -
Method Summary
Modifier and TypeMethodDescriptionstatic void
addChainedFilledBoxVertices
(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) static void
addChainedFilledBoxVertices
(PoseStack pPoseStack, VertexConsumer pConsumer, float pMinX, float pMinY, float pMinZ, float pMaxX, float pMaxY, float pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) private void
addFrustumQuad
(VertexConsumer p_270858_, org.joml.Matrix4f p_270341_, int p_270702_, int p_270959_, int p_270732_, int p_270363_, int p_270273_, int p_270934_, int p_270916_) private void
addFrustumVertex
(VertexConsumer p_270950_, org.joml.Matrix4f p_270118_, int p_270865_) void
addParticle
(ParticleOptions pOptions, boolean pForce, boolean pDecreased, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) void
addParticle
(ParticleOptions pOptions, boolean pForce, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) private <T extends ParticleOptions>
voidaddParticle
(T pOptions, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) private Particle
addParticleInternal
(ParticleOptions pOptions, boolean pForce, boolean pDecreased, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) private Particle
addParticleInternal
(ParticleOptions pOptions, boolean pForce, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) void
addRecentlyCompiledSection
(SectionRenderDispatcher.RenderSection pRenderSection) void
private void
applyFrustum
(Frustum pFrustum) void
blockChanged
(BlockGetter pLevel, BlockPos pPos, BlockState pOldState, BlockState pNewState, int pFlags) private MeshData
buildClouds
(Tesselator pTesselator, double pX, double pY, double pZ, Vec3 pCloudColor) private static MeshData
buildSkyDisc
(Tesselator pTesselator, float pY) private ParticleStatus
calculateParticleLevel
(boolean pDecreased) Calculates the level of particles to use based on the particles option and the specifieddecreased
parameter.void
private void
captureFrustum
(org.joml.Matrix4f p_253756_, org.joml.Matrix4f p_253787_, double p_254187_, double p_253833_, double p_254547_, Frustum p_253954_) private void
checkPoseStack
(PoseStack pPoseStack) Asserts that the specifiedposeStack
is clear.void
clear()
void
close()
private void
compileSections
(Camera pCamera) int
private void
private void
private void
private void
void
destroyBlockProgress
(int pBreakerId, BlockPos pPos, int pProgress) void
private boolean
doesMobEffectBlockSky
(Camera pCamera) private MeshData
drawStars
(Tesselator pTesselator) double
static int
getLightColor
(BlockAndTintGetter pLevel, BlockPos pPos) static int
getLightColor
(BlockAndTintGetter pLevel, BlockState pState, BlockPos pPos) int
getTicks()
double
void
globalLevelEvent
(int pType, BlockPos pPos, int pData) Handles a global level event.void
boolean
void
private void
boolean
isSectionCompiled
(BlockPos pPos) void
iterateVisibleBlockEntities
(Consumer<BlockEntity> blockEntityConsumer) void
void
levelEvent
(int pType, BlockPos pPos, int pData) private static Vec3
mixColor
(float pHue) void
private void
notifyNearbyEntities
(Level pLevel, BlockPos pPos, boolean pPlaying) Notifies living entities in a 3 block range of the specifiedpos
that a record is or isn't playing nearby, dependent on the specifiedplaying
parameter.static Frustum
offsetFrustum
(Frustum pFrustum) void
onChunkLoaded
(ChunkPos pChunkPos) void
onResourceManagerReload
(ResourceManager pResourceManager) void
playJukeboxSong
(Holder<JukeboxSong> pSong, BlockPos pPos) void
prepareCullFrustum
(Vec3 p_253766_, org.joml.Matrix4f p_254341_, org.joml.Matrix4f p_323487_) private void
removeProgress
(BlockDestructionProgress pProgress) void
renderClouds
(PoseStack p_254145_, org.joml.Matrix4f p_254537_, org.joml.Matrix4f p_324366_, float p_254364_, double p_253843_, double p_253663_, double p_253795_) private void
renderDebug
(PoseStack pPoseStack, MultiBufferSource pBuffer, Camera pCamera) private void
renderEndSky
(PoseStack pPoseStack) private void
renderEntity
(Entity pEntity, double pCamX, double pCamY, double pCamZ, float pPartialTick, PoseStack pPoseStack, MultiBufferSource pBufferSource) static void
renderFace
(PoseStack pPoseStack, VertexConsumer pBuffer, Direction pFace, float pX1, float pY1, float pZ1, float pX2, float pY2, float pZ2, float pRed, float pGreen, float pBlue, float pAlpha) private void
renderHitOutline
(PoseStack pPoseStack, VertexConsumer pConsumer, Entity pEntity, double pCamX, double pCamY, double pCamZ, BlockPos pPos, BlockState pState) void
renderLevel
(DeltaTracker p_348530_, boolean p_109603_, Camera p_109604_, GameRenderer p_109605_, LightTexture p_109606_, org.joml.Matrix4f p_254120_, org.joml.Matrix4f p_323920_) static void
renderLineBox
(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) static void
renderLineBox
(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha, float pRed2, float pGreen2, float pBlue2) static void
renderLineBox
(PoseStack pPoseStack, VertexConsumer pBuffer, AABB pBox, float pRed, float pGreen, float pBlue, float pAlpha) static void
renderLineBox
(VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) private void
renderSectionLayer
(RenderType p_294513_, double p_295577_, double p_294761_, double p_294297_, org.joml.Matrix4f p_294782_, org.joml.Matrix4f p_324517_) private static void
renderShape
(PoseStack pPoseStack, VertexConsumer pConsumer, VoxelShape pShape, double pX, double pY, double pZ, float pRed, float pGreen, float pBlue, float pAlpha) void
renderSky
(org.joml.Matrix4f p_254034_, org.joml.Matrix4f p_324386_, float p_202426_, Camera p_202427_, boolean p_202428_, Runnable p_202429_) private void
renderSnowAndRain
(LightTexture pLightTexture, float pPartialTick, double pCamX, double pCamY, double pCamZ) static void
renderVoxelShape
(PoseStack pPoseStack, VertexConsumer pConsumer, VoxelShape pShape, double pX, double pY, double pZ, float pRed, float pGreen, float pBlue, float pAlpha, boolean p_286443_) private void
renderWorldBorder
(Camera pCamera) void
Neo: Request outline effect post-processing to be enabled for the current frame.void
resize
(int pWidth, int pHeight) private void
setBlockDirty
(BlockPos pPos, boolean pReRenderOnMainThread) void
setBlockDirty
(BlockPos pPos, BlockState pOldState, BlockState pNewState) void
setBlocksDirty
(int pMinX, int pMinY, int pMinZ, int pMaxX, int pMaxY, int pMaxZ) Re-renders all blocks in the specified range.void
setLevel
(ClientLevel pLevel) void
setSectionDirty
(int pSectionX, int pSectionY, int pSectionZ) private void
setSectionDirty
(int pSectionX, int pSectionY, int pSectionZ, boolean pReRenderOnMainThread) void
setSectionDirtyWithNeighbors
(int pSectionX, int pSectionY, int pSectionZ) private void
setupRender
(Camera pCamera, Frustum pFrustum, boolean pHasCapturedFrustum, boolean pIsSpectator) private static Vec3
shiftHue
(float pRed, float pGreen, float pBlue, float pHue) private void
shootParticles
(int pDirection, BlockPos pPos, RandomSource pRandom, SimpleParticleType pParticleType) boolean
private void
stopJukeboxSong
(BlockPos pPos) void
void
tick()
void
void
updateGlobalBlockEntities
(Collection<BlockEntity> pBlockEntitiesToRemove, Collection<BlockEntity> pBlockEntitiesToAdd) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.minecraft.server.packs.resources.PreparableReloadListener
getName
Methods inherited from interface net.minecraft.server.packs.resources.ResourceManagerReloadListener
reload
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
SECTION_SIZE
public static final int SECTION_SIZE- See Also:
-
HALF_SECTION_SIZE
public static final int HALF_SECTION_SIZE- See Also:
-
SKY_DISC_RADIUS
private static final float SKY_DISC_RADIUS- See Also:
-
MIN_FOG_DISTANCE
private static final int MIN_FOG_DISTANCE- See Also:
-
RAIN_RADIUS
private static final int RAIN_RADIUS- See Also:
-
RAIN_DIAMETER
private static final int RAIN_DIAMETER- See Also:
-
TRANSPARENT_SORT_COUNT
private static final int TRANSPARENT_SORT_COUNT- See Also:
-
MOON_LOCATION
-
SUN_LOCATION
-
CLOUDS_LOCATION
-
END_SKY_LOCATION
-
FORCEFIELD_LOCATION
-
RAIN_LOCATION
-
SNOW_LOCATION
-
DIRECTIONS
-
minecraft
-
entityRenderDispatcher
-
blockEntityRenderDispatcher
-
renderBuffers
-
level
-
sectionOcclusionGraph
-
visibleSections
private final it.unimi.dsi.fastutil.objects.ObjectArrayList<SectionRenderDispatcher.RenderSection> visibleSections -
globalBlockEntities
Global block entities; these are always rendered, even if off-screen. Any block entity is added to this ifBlockEntityRenderer.shouldRenderOffScreen(net.minecraft.world.level.block.entity.BlockEntity)
returnstrue
. -
viewArea
-
starBuffer
-
skyBuffer
-
darkBuffer
-
generateClouds
private boolean generateClouds -
cloudBuffer
-
frameTimes
-
ticks
private int ticks -
destroyingBlocks
-
destructionProgress
private final it.unimi.dsi.fastutil.longs.Long2ObjectMap<SortedSet<BlockDestructionProgress>> destructionProgress -
playingJukeboxSongs
-
entityTarget
-
entityEffect
-
translucentTarget
-
itemEntityTarget
-
particlesTarget
-
weatherTarget
-
cloudsTarget
-
transparencyChain
-
lastCameraSectionX
private int lastCameraSectionX -
lastCameraSectionY
private int lastCameraSectionY -
lastCameraSectionZ
private int lastCameraSectionZ -
prevCamX
private double prevCamX -
prevCamY
private double prevCamY -
prevCamZ
private double prevCamZ -
prevCamRotX
private double prevCamRotX -
prevCamRotY
private double prevCamRotY -
prevCloudX
private int prevCloudX -
prevCloudY
private int prevCloudY -
prevCloudZ
private int prevCloudZ -
prevCloudColor
-
prevCloudsType
-
sectionRenderDispatcher
-
lastViewDistance
private int lastViewDistance -
renderedEntities
private int renderedEntities -
culledEntities
private int culledEntities -
cullingFrustum
-
captureFrustum
private boolean captureFrustum -
capturedFrustum
-
frustumPoints
private final org.joml.Vector4f[] frustumPoints -
frustumPos
private final org.joml.Vector3d frustumPos -
xTransparentOld
private double xTransparentOld -
yTransparentOld
private double yTransparentOld -
zTransparentOld
private double zTransparentOld -
rainSoundTime
private int rainSoundTime -
rainSizeX
private final float[] rainSizeX -
rainSizeZ
private final float[] rainSizeZ -
outlineEffectRequested
private boolean outlineEffectRequestedNeo: Indicates whether outline effect post-processing was requested for the current frame outside of vanilla codepaths
-
-
Constructor Details
-
LevelRenderer
public LevelRenderer(Minecraft pMinecraft, EntityRenderDispatcher pEntityRenderDispatcher, BlockEntityRenderDispatcher pBlockEntityRenderDispatcher, RenderBuffers pRenderBuffers)
-
-
Method Details
-
renderSnowAndRain
private void renderSnowAndRain(LightTexture pLightTexture, float pPartialTick, double pCamX, double pCamY, double pCamZ) -
tickRain
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
onResourceManagerReload
- Specified by:
onResourceManagerReload
in interfaceResourceManagerReloadListener
-
initOutline
public void initOutline() -
initTransparency
private void initTransparency() -
deinitTransparency
private void deinitTransparency() -
doEntityOutline
public void doEntityOutline() -
shouldShowEntityOutlines
public boolean shouldShowEntityOutlines() -
createDarkSky
private void createDarkSky() -
createLightSky
private void createLightSky() -
buildSkyDisc
-
createStars
private void createStars() -
drawStars
-
setLevel
- Parameters:
pLevel
- the level to set, ornull
to clear
-
graphicsChanged
public void graphicsChanged() -
allChanged
public void allChanged() -
resize
public void resize(int pWidth, int pHeight) -
getSectionStatistics
-
getSectionRenderDispatcher
-
getTotalSections
public double getTotalSections() -
getLastViewDistance
public double getLastViewDistance() -
countRenderedSections
public int countRenderedSections() -
getEntityStatistics
-
setupRender
-
offsetFrustum
-
applyFrustum
-
addRecentlyCompiledSection
-
captureFrustum
private void captureFrustum(org.joml.Matrix4f p_253756_, org.joml.Matrix4f p_253787_, double p_254187_, double p_253833_, double p_254547_, Frustum p_253954_) -
prepareCullFrustum
public void prepareCullFrustum(Vec3 p_253766_, org.joml.Matrix4f p_254341_, org.joml.Matrix4f p_323487_) -
renderLevel
public void renderLevel(DeltaTracker p_348530_, boolean p_109603_, Camera p_109604_, GameRenderer p_109605_, LightTexture p_109606_, org.joml.Matrix4f p_254120_, org.joml.Matrix4f p_323920_) -
checkPoseStack
Asserts that the specifiedposeStack
is clear.- Throws:
IllegalStateException
- if the specifiedposeStack
is not clear
-
renderEntity
private void renderEntity(Entity pEntity, double pCamX, double pCamY, double pCamZ, float pPartialTick, PoseStack pPoseStack, MultiBufferSource pBufferSource) -
renderSectionLayer
private void renderSectionLayer(RenderType p_294513_, double p_295577_, double p_294761_, double p_294297_, org.joml.Matrix4f p_294782_, org.joml.Matrix4f p_324517_) -
renderDebug
-
addFrustumVertex
-
addFrustumQuad
private void addFrustumQuad(VertexConsumer p_270858_, org.joml.Matrix4f p_270341_, int p_270702_, int p_270959_, int p_270732_, int p_270363_, int p_270273_, int p_270934_, int p_270916_) -
captureFrustum
public void captureFrustum() -
killFrustum
public void killFrustum() -
tick
public void tick() -
removeProgress
-
renderEndSky
-
renderSky
-
doesMobEffectBlockSky
-
renderClouds
public void renderClouds(PoseStack p_254145_, org.joml.Matrix4f p_254537_, org.joml.Matrix4f p_324366_, float p_254364_, double p_253843_, double p_253663_, double p_253795_) -
buildClouds
private MeshData buildClouds(Tesselator pTesselator, double pX, double pY, double pZ, Vec3 pCloudColor) -
compileSections
-
renderWorldBorder
-
renderHitOutline
private void renderHitOutline(PoseStack pPoseStack, VertexConsumer pConsumer, Entity pEntity, double pCamX, double pCamY, double pCamZ, BlockPos pPos, BlockState pState) -
mixColor
-
shiftHue
-
renderVoxelShape
public static void renderVoxelShape(PoseStack pPoseStack, VertexConsumer pConsumer, VoxelShape pShape, double pX, double pY, double pZ, float pRed, float pGreen, float pBlue, float pAlpha, boolean p_286443_) -
renderShape
private static void renderShape(PoseStack pPoseStack, VertexConsumer pConsumer, VoxelShape pShape, double pX, double pY, double pZ, float pRed, float pGreen, float pBlue, float pAlpha) -
renderLineBox
public static void renderLineBox(VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) -
renderLineBox
public static void renderLineBox(PoseStack pPoseStack, VertexConsumer pBuffer, AABB pBox, float pRed, float pGreen, float pBlue, float pAlpha) -
renderLineBox
public static void renderLineBox(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) -
renderLineBox
public static void renderLineBox(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha, float pRed2, float pGreen2, float pBlue2) -
addChainedFilledBoxVertices
public static void addChainedFilledBoxVertices(PoseStack pPoseStack, VertexConsumer pConsumer, double pMinX, double pMinY, double pMinZ, double pMaxX, double pMaxY, double pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) -
addChainedFilledBoxVertices
public static void addChainedFilledBoxVertices(PoseStack pPoseStack, VertexConsumer pConsumer, float pMinX, float pMinY, float pMinZ, float pMaxX, float pMaxY, float pMaxZ, float pRed, float pGreen, float pBlue, float pAlpha) -
renderFace
public static void renderFace(PoseStack pPoseStack, VertexConsumer pBuffer, Direction pFace, float pX1, float pY1, float pZ1, float pX2, float pY2, float pZ2, float pRed, float pGreen, float pBlue, float pAlpha) -
blockChanged
public void blockChanged(BlockGetter pLevel, BlockPos pPos, BlockState pOldState, BlockState pNewState, int pFlags) -
setBlockDirty
-
setBlocksDirty
public void setBlocksDirty(int pMinX, int pMinY, int pMinZ, int pMaxX, int pMaxY, int pMaxZ) Re-renders all blocks in the specified range. -
setBlockDirty
-
setSectionDirtyWithNeighbors
public void setSectionDirtyWithNeighbors(int pSectionX, int pSectionY, int pSectionZ) -
setSectionDirty
public void setSectionDirty(int pSectionX, int pSectionY, int pSectionZ) -
setSectionDirty
private void setSectionDirty(int pSectionX, int pSectionY, int pSectionZ, boolean pReRenderOnMainThread) -
getFrustum
-
getTicks
public int getTicks() -
iterateVisibleBlockEntities
-
requestOutlineEffect
public void requestOutlineEffect()Neo: Request outline effect post-processing to be enabled for the current frame. Must be called before block entities are done rendering, ideally early during the frame -
playJukeboxSong
-
stopJukeboxSong
-
stopJukeboxSongAndNotifyNearby
-
notifyNearbyEntities
Notifies living entities in a 3 block range of the specifiedpos
that a record is or isn't playing nearby, dependent on the specifiedplaying
parameter. This is used to make parrots start or stop partying. -
addParticle
public void addParticle(ParticleOptions pOptions, boolean pForce, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) - Parameters:
pForce
- iftrue
, the particle will be created regardless of its distance from the camera and theinvalid @linkplain
{@linkplain #
-
addParticle
public void addParticle(ParticleOptions pOptions, boolean pForce, boolean pDecreased, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) - Parameters:
pForce
- iftrue
, the particle will be created regardless of its distance from the camera and theinvalid @linkplain
{@linkplain #
pDecreased
- iftrue
, and the particles option is set to minimal, attempts to spawn the particle at a decreased level
-
addParticle
private <T extends ParticleOptions> void addParticle(T pOptions, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) -
addParticleInternal
@Nullable private Particle addParticleInternal(ParticleOptions pOptions, boolean pForce, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) - Parameters:
pForce
- iftrue
, the particle will be created regardless of its distance from the camera and theinvalid @linkplain
{@linkplain #
-
addParticleInternal
@Nullable private Particle addParticleInternal(ParticleOptions pOptions, boolean pForce, boolean pDecreased, double pX, double pY, double pZ, double pXSpeed, double pYSpeed, double pZSpeed) - Parameters:
pForce
- iftrue
, the particle will be created regardless of its distance from the camera and theinvalid @linkplain
{@linkplain #
pDecreased
- iftrue
, and the particles option is set to minimal, attempts to spawn the particle at a decreased level
-
calculateParticleLevel
Calculates the level of particles to use based on the particles option and the specifieddecreased
parameter. This leads to randomly generating more or less particles than the set option.- Parameters:
pDecreased
- iftrue
, and the particles option is set to minimal, has a 1 in 10 chance to return a decreased level and a further 1 in 3 chance to minimise it
-
clear
public void clear() -
globalLevelEvent
Handles a global level event. This includes playing sounds that should be heard by any player, regardless of position and dimension, such as the Wither spawning.- Parameters:
pType
- the type of level event to handle. This method only handles invalid input: '{@' linkplain net.minecraft.world.level.block.LevelEvent# SOUND_WITHER_BOSS_SPAWN the wither boss spawn sound}, the dragon's death sound, and the end portal spawn sound.
-
levelEvent
-
destroyBlockProgress
-
hasRenderedAllSections
public boolean hasRenderedAllSections() -
onChunkLoaded
-
needsUpdate
public void needsUpdate() -
updateGlobalBlockEntities
public void updateGlobalBlockEntities(Collection<BlockEntity> pBlockEntitiesToRemove, Collection<BlockEntity> pBlockEntitiesToAdd) -
getLightColor
-
getLightColor
-
isSectionCompiled
-
entityTarget
-
getTranslucentTarget
-
getItemEntityTarget
-
getParticlesTarget
-
getWeatherTarget
-
getCloudsTarget
-
shootParticles
private void shootParticles(int pDirection, BlockPos pPos, RandomSource pRandom, SimpleParticleType pParticleType)
-