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 booleanstatic 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.pipeline.RenderTargetstatic com.mojang.blaze3d.pipeline.RenderTargetstatic net.minecraft.client.renderer.PostChainstatic com.mojang.blaze3d.pipeline.RenderTargetstatic 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 com.mojang.blaze3d.pipeline.RenderTargetstatic 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 voidstatic voidcopyDepthBuffer(com.mojang.blaze3d.pipeline.RenderTarget tempRenderTarget) static voidendBatches(net.minecraft.client.renderer.MultiBufferSource.BufferSource source, Collection<net.minecraft.client.renderer.RenderType> renderTypes) static voidendBatches(RenderHandler.LodestoneRenderLayer renderLayer) static voidstatic voidendBatchesExperimental(RenderHandler.LodestoneRenderLayer renderLayer, boolean isFabulous) static voidstatic 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) static void
-
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
-
LARGER_BUFFER_SOURCES
public static boolean LARGER_BUFFER_SOURCES -
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 -
TEMP_RENDER_TARGET
public static com.mojang.blaze3d.pipeline.RenderTarget TEMP_RENDER_TARGET -
LODESTONE_DEPTH_CACHE
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_DEPTH_CACHE -
LODESTONE_TRANSLUCENT
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_TRANSLUCENT -
LODESTONE_TRANSLUCENT_PARTICLE
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_TRANSLUCENT_PARTICLE -
LODESTONE_ADDITIVE
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_ADDITIVE -
LODESTONE_ADDITIVE_PARTICLE
public static com.mojang.blaze3d.pipeline.RenderTarget LODESTONE_ADDITIVE_PARTICLE -
LODESTONE_POST_CHAIN
public static net.minecraft.client.renderer.PostChain LODESTONE_POST_CHAIN
-
-
Constructor Details
-
RenderHandler
public RenderHandler()
-
-
Method Details
-
onClientSetup
public static void onClientSetup(net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent event) -
setupLodestoneRenderTargets
public static void setupLodestoneRenderTargets() -
closeLodestoneRenderTargets
public static void closeLodestoneRenderTargets() -
resize
public static void resize(int width, int height) -
endBatchesEarly
public static void endBatchesEarly() -
endBatchesLate
public static void endBatchesLate() -
endBatches
-
endBatchesExperimental
public static void endBatchesExperimental(RenderHandler.LodestoneRenderLayer renderLayer, boolean isFabulous) -
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)
-