Class VeilDeferredRenderer
java.lang.Object
foundry.veil.api.client.render.deferred.VeilDeferredRenderer
- All Implemented Interfaces:
AutoCloseable
,net.minecraft.server.packs.resources.PreparableReloadListener
,org.lwjgl.system.NativeResource
public class VeilDeferredRenderer
extends Object
implements net.minecraft.server.packs.resources.PreparableReloadListener, org.lwjgl.system.NativeResource
Handles mixing the regular deferred pipeline and the forward-rendered transparency pipeline.
The rendering pipeline goes in this order:
- Opaque Shaders
- Opaque post-processing (
OPAQUE_POST
) - Light Shaders via
LightRenderer
- Light post-processing (
LIGHT_POST
) - Transparency Shaders
- Transparency post-processing (
TRANSPARENT_POST
) - Light Shaders via
LightRenderer
- Light post-processing (
LIGHT_POST
) - Final image compositing
- Final post-processing via
PostProcessingManager
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.minecraft.server.packs.resources.PreparableReloadListener
net.minecraft.server.packs.resources.PreparableReloadListener.PreparationBarrier
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.resources.ResourceLocation
static final net.minecraft.network.chat.MutableComponent
static final net.minecraft.network.chat.MutableComponent
static final net.minecraft.network.chat.MutableComponent
-
Constructor Summary
ConstructorDescriptionVeilDeferredRenderer
(ShaderManager deferredShaderManager, ShaderPreDefinitions shaderPreDefinitions, FramebufferManager framebufferManager, PostProcessingManager postProcessingManager) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addDebugInfo
(Consumer<String> consumer) void
void
void
blit()
void
clear()
void
disable()
Forces the renderer off.void
enable()
Allows the renderer to run normally.void
end()
void
free()
boolean
isActive()
boolean
static boolean
reload
(net.minecraft.server.packs.resources.PreparableReloadListener.PreparationBarrier preparationBarrier, net.minecraft.server.packs.resources.ResourceManager resourceManager, net.minecraft.util.profiling.ProfilerFiller prepareProfiler, net.minecraft.util.profiling.ProfilerFiller applyProfiler, Executor backgroundExecutor, Executor gameExecutor) void
reset()
void
setup()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.lwjgl.system.NativeResource
close
Methods inherited from interface net.minecraft.server.packs.resources.PreparableReloadListener
getName
-
Field Details
-
PACK_ID
public static final net.minecraft.resources.ResourceLocation PACK_ID -
DISABLE_VANILLA_ENTITY_LIGHT_KEY
- See Also:
-
OPAQUE_POST
public static final net.minecraft.resources.ResourceLocation OPAQUE_POST -
LIGHT_POST
public static final net.minecraft.resources.ResourceLocation LIGHT_POST -
OPAQUE_MIX
public static final net.minecraft.resources.ResourceLocation OPAQUE_MIX -
TRANSPARENT_MIX
public static final net.minecraft.resources.ResourceLocation TRANSPARENT_MIX -
TRANSPARENT_POST
public static final net.minecraft.resources.ResourceLocation TRANSPARENT_POST -
SCREEN_POST
public static final net.minecraft.resources.ResourceLocation SCREEN_POST -
UNSUPPORTED_TITLE
public static final net.minecraft.network.chat.MutableComponent UNSUPPORTED_TITLE -
UNSUPPORTED_SODIUM_DESC
public static final net.minecraft.network.chat.MutableComponent UNSUPPORTED_SODIUM_DESC -
UNSUPPORTED_FABULOUS_DESC
public static final net.minecraft.network.chat.MutableComponent UNSUPPORTED_FABULOUS_DESC
-
-
Constructor Details
-
VeilDeferredRenderer
public VeilDeferredRenderer(ShaderManager deferredShaderManager, ShaderPreDefinitions shaderPreDefinitions, FramebufferManager framebufferManager, PostProcessingManager postProcessingManager)
-
-
Method Details
-
reload
public CompletableFuture<Void> reload(net.minecraft.server.packs.resources.PreparableReloadListener.PreparationBarrier preparationBarrier, net.minecraft.server.packs.resources.ResourceManager resourceManager, net.minecraft.util.profiling.ProfilerFiller prepareProfiler, net.minecraft.util.profiling.ProfilerFiller applyProfiler, Executor backgroundExecutor, Executor gameExecutor) - Specified by:
reload
in interfacenet.minecraft.server.packs.resources.PreparableReloadListener
-
free
public void free()- Specified by:
free
in interfaceorg.lwjgl.system.NativeResource
-
reset
@Internal public void reset() -
setup
@Internal public void setup() -
clear
@Internal public void clear() -
beginOpaque
@Internal public void beginOpaque() -
beginTranslucent
@Internal public void beginTranslucent() -
blit
@Internal public void blit() -
end
@Internal public void end() -
addDebugInfo
-
enable
public void enable()Allows the renderer to run normally. -
disable
public void disable()Forces the renderer off. -
isEnabled
public boolean isEnabled()- Returns:
- Whether the deferred renderer is initialized and ready to use
-
isSupported
public static boolean isSupported()- Returns:
- Whether the deferred rendering pipeline is supported
-
isActive
public boolean isActive()- Returns:
- Whether the deferred renderer is currently actively being used
-
getLightRenderer
-
getRendererState
-
getDeferredShaderManager
-