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 ClassesNested classes/interfaces inherited from interface net.minecraft.server.packs.resources.PreparableReloadListener
net.minecraft.server.packs.resources.PreparableReloadListener.PreparationBarrier -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.resources.ResourceLocationstatic final net.minecraft.network.chat.MutableComponentstatic final net.minecraft.network.chat.MutableComponentstatic final net.minecraft.network.chat.MutableComponent -
Constructor Summary
ConstructorsConstructorDescriptionVeilDeferredRenderer(ShaderManager deferredShaderManager, ShaderPreDefinitions shaderPreDefinitions, FramebufferManager framebufferManager, PostProcessingManager postProcessingManager) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDebugInfo(Consumer<String> consumer) voidvoidvoidblit()voidclear()voiddisable()Forces the renderer off.voidenable()Allows the renderer to run normally.voidend()voidfree()booleanisActive()booleanstatic booleanreload(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) voidreset()voidsetup()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.lwjgl.system.NativeResource
closeMethods 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:
reloadin interfacenet.minecraft.server.packs.resources.PreparableReloadListener
-
free
public void free()- Specified by:
freein 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
-