Class RenderLevelStageEvent

java.lang.Object
net.neoforged.bus.api.Event
net.neoforged.neoforge.client.event.RenderLevelStageEvent
Direct Known Subclasses:
RenderLevelStageEvent.AfterBlockEntities, RenderLevelStageEvent.AfterEntities, RenderLevelStageEvent.AfterLevel, RenderLevelStageEvent.AfterOpaqueBlocks, RenderLevelStageEvent.AfterParticles, RenderLevelStageEvent.AfterSky, RenderLevelStageEvent.AfterTranslucentBlocks, RenderLevelStageEvent.AfterTripwireBlocks, RenderLevelStageEvent.AfterWeather

public abstract class RenderLevelStageEvent extends net.neoforged.bus.api.Event
Fires at various times during LevelRenderer.renderLevel(com.mojang.blaze3d.resource.GraphicsResourceAllocator, net.minecraft.client.DeltaTracker, boolean, net.minecraft.client.Camera, org.joml.Matrix4f, org.joml.Matrix4f, com.mojang.blaze3d.buffers.GpuBufferSlice, org.joml.Vector4f, boolean) and GameRenderer.renderLevel(net.minecraft.client.DeltaTracker)

The sub-events are not cancellable.

The sub-events are fired on the main NeoForge event bus, only on the logical client.

The current order that the sub-events fire in are: AfterSky, AfterOpaqueBlocks, AfterEntities, AfterBlockEntities, AfterTranslucentBlocks, AfterTripwireBlocks, AfterParticles, AfterWeather, AfterLevel

  • Field Details

    • level

      private final Level level
    • levelRenderer

      private final LevelRenderer levelRenderer
    • poseStack

      private final PoseStack poseStack
    • modelViewMatrix

      private final Matrix4f modelViewMatrix
    • renderTick

      private final int renderTick
    • partialTick

      private final DeltaTracker partialTick
    • camera

      private final Camera camera
    • frustum

      private final Frustum frustum
    • renderableSections

      private final Iterable<? extends IRenderableSection> renderableSections
  • Constructor Details

  • Method Details

    • getLevel

      public Level getLevel()
      Returns the current level that is being rendered..
      Returns:
      the current level that is being rendered.
    • getLevelRenderer

      public LevelRenderer getLevelRenderer()
      Returns the level renderer.
      Returns:
      the level renderer
    • getPoseStack

      public PoseStack getPoseStack()
      Returns the pose stack used for rendering.
      Returns:
      the pose stack used for rendering
    • getModelViewMatrix

      public Matrix4f getModelViewMatrix()
      Returns the model view matrix used for rendering.
      Returns:
      the model view matrix used for rendering
    • getRenderTick

      public int getRenderTick()
      Returns the current "ticks" value in the level renderer.
      Returns:
      the current "ticks" value in the level renderer
    • getPartialTick

      public DeltaTracker getPartialTick()
      Returns the current partialTick value used for rendering.
      Returns:
      the current partialTick value used for rendering
    • getCamera

      public Camera getCamera()
      Returns the camera.
      Returns:
      the camera
    • getFrustum

      public Frustum getFrustum()
      Returns the frustum.
      Returns:
      the frustum
    • getRenderableSections

      public Iterable<? extends IRenderableSection> getRenderableSections()
      Returns an iterable of all visible sections.

      Calling Iterable.forEach(Consumer) on the returned iterable allows the underlying renderer to optimize how it fetches the visible sections, and is recommended.