Package team.lodestar.lodestone.handlers
Class RenderHandler
java.lang.Object
team.lodestar.lodestone.handlers.RenderHandler
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
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> static floatstatic floatstatic floatstatic floatstatic floatstatic com.mojang.blaze3d.shaders.FogShapestatic final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> static final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> static com.mojang.blaze3d.pipeline.RenderTargetstatic com.mojang.blaze3d.vertex.PoseStackstatic org.joml.Matrix4fstatic final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> static final Collection<net.minecraft.client.renderer.RenderType>static final HashMap<net.minecraft.client.renderer.RenderType,ShaderUniformHandler> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddRenderType(net.minecraft.client.renderer.RenderType renderType) static voidstatic voidcacheFogData(net.minecraftforge.client.event.ViewportEvent.ComputeFogColor event) static voidcacheFogData(net.minecraftforge.client.event.ViewportEvent.RenderFog event) static voidcopyDepthBuffer(com.mojang.blaze3d.pipeline.RenderTarget tempRenderTarget) static voidstatic voidendBatches(net.minecraft.client.renderer.MultiBufferSource.BufferSource source, Collection<net.minecraft.client.renderer.RenderType> renderTypes) static voidendBatches(RenderHandler.LodestoneRenderLayer renderLayer) static voidstatic voidonClientSetup(net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent event) static voidrenderBufferedBatches(RenderHandler.LodestoneRenderLayer renderLayer, boolean transparentOnly) static voidrenderBufferedParticles(RenderHandler.LodestoneRenderLayer renderLayer, boolean transparentOnly) static voidresize(int width, int height)
-
Field Details
-
BUFFERS
public static final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> BUFFERS -
PARTICLE_BUFFERS
public static final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> PARTICLE_BUFFERS -
LATE_BUFFERS
public static final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> LATE_BUFFERS -
LATE_PARTICLE_BUFFERS
public static final HashMap<net.minecraft.client.renderer.RenderType,com.mojang.blaze3d.vertex.BufferBuilder> LATE_PARTICLE_BUFFERS -
UNIFORM_HANDLERS
public static final HashMap<net.minecraft.client.renderer.RenderType,ShaderUniformHandler> UNIFORM_HANDLERS -
TRANSPARENT_RENDER_TYPES
-
LODESTONE_DEPTH_CACHE
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_DEPTH_CACHE -
DELAYED_RENDER
-
LATE_DELAYED_RENDER
-
MAIN_POSE_STACK
public static com.mojang.blaze3d.vertex.PoseStack MAIN_POSE_STACK -
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.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent event) -
resize
public static void resize(int width, int height) -
endBatches
public static void endBatches() -
endBatches
-
cacheFogData
public static void cacheFogData(net.minecraftforge.client.event.ViewportEvent.RenderFog event) -
cacheFogData
public static void cacheFogData(net.minecraftforge.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)
-