Class RenderHandler

java.lang.Object
team.lodestar.lodestone.handlers.RenderHandler

public class RenderHandler extends Object
A handler responsible for all the backend rendering processes. To have additive transparency work in a minecraft environment, we need to buffer our rendering till after clouds and water have rendered. This happens for particles, as well as all of our custom RenderTypes
  • Field Details

    • BUFFERS

      public static final SequencedMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.ByteBufferBuilder> BUFFERS
    • PARTICLE_BUFFERS

      public static final SequencedMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.ByteBufferBuilder> PARTICLE_BUFFERS
    • LATE_BUFFERS

      public static final SequencedMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.ByteBufferBuilder> LATE_BUFFERS
    • LATE_PARTICLE_BUFFERS

      public static final SequencedMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.ByteBufferBuilder> LATE_PARTICLE_BUFFERS
    • UNIFORM_HANDLERS

      public static final HashMap<net.minecraft.client.renderer.RenderType,ShaderUniformHandler> UNIFORM_HANDLERS
    • TRANSPARENT_RENDER_TYPES

      public static final Collection<net.minecraft.client.renderer.RenderType> TRANSPARENT_RENDER_TYPES
    • LODESTONE_DEPTH_CACHE

      public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_DEPTH_CACHE
    • DELAYED_RENDER

      public static RenderHandler.LodestoneRenderLayer DELAYED_RENDER
    • LATE_DELAYED_RENDER

      public static RenderHandler.LodestoneRenderLayer LATE_DELAYED_RENDER
    • MAIN_PROJ

      public static org.joml.Matrix4f MAIN_PROJ
    • MATRIX4F

      public static org.joml.Matrix4f MATRIX4F
    • FOG_NEAR

      public static float FOG_NEAR
    • FOG_FAR

      public static float FOG_FAR
    • FOG_SHAPE

      public static com.mojang.blaze3d.shaders.FogShape FOG_SHAPE
    • FOG_RED

      public static float FOG_RED
    • FOG_GREEN

      public static float FOG_GREEN
    • FOG_BLUE

      public static float FOG_BLUE
  • Constructor Details

    • RenderHandler

      public RenderHandler()
  • Method Details

    • onClientSetup

      public static void onClientSetup(net.neoforged.fml.event.lifecycle.FMLClientSetupEvent event)
    • resize

      public static void resize(int width, int height)
    • endBatches

      public static void endBatches()
    • endBatches

      public static void endBatches(RenderHandler.LodestoneRenderLayer renderLayer)
    • cacheFogData

      public static void cacheFogData(net.neoforged.neoforge.client.event.ViewportEvent.RenderFog event)
    • cacheFogData

      public static void cacheFogData(net.neoforged.neoforge.client.event.ViewportEvent.ComputeFogColor event)
    • beginBufferedRendering

      public static void beginBufferedRendering()
    • endBufferedRendering

      public static void endBufferedRendering()
    • renderBufferedParticles

      public static void renderBufferedParticles(RenderHandler.LodestoneRenderLayer renderLayer, boolean transparentOnly)
    • renderBufferedBatches

      public static void renderBufferedBatches(RenderHandler.LodestoneRenderLayer renderLayer, boolean transparentOnly)
    • endBatches

      public static void endBatches(net.minecraft.client.renderer.MultiBufferSource.BufferSource source, Collection<net.minecraft.client.renderer.RenderType> renderTypes)
    • addRenderType

      public static void addRenderType(net.minecraft.client.renderer.RenderType renderType)
    • copyDepthBuffer

      public static void copyDepthBuffer(com.mojang.blaze3d.pipeline.RenderTarget tempRenderTarget)
    • setupDepthBuffer

      public static void setupDepthBuffer()
    • enableStencil

      public static void enableStencil()