From a32e20fbde7a62c71b719c2a859a03ec8a7724c5 Mon Sep 17 00:00:00 2001 From: Ocelot Date: Sat, 11 Jan 2025 15:41:26 -0700 Subject: [PATCH] Fixed hand with lights --- .../render/pipeline/VeilFirstPersonRenderer.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/common/src/main/java/foundry/veil/impl/client/render/pipeline/VeilFirstPersonRenderer.java b/common/src/main/java/foundry/veil/impl/client/render/pipeline/VeilFirstPersonRenderer.java index 1a902e07..dd6f9c39 100644 --- a/common/src/main/java/foundry/veil/impl/client/render/pipeline/VeilFirstPersonRenderer.java +++ b/common/src/main/java/foundry/veil/impl/client/render/pipeline/VeilFirstPersonRenderer.java @@ -8,6 +8,8 @@ import foundry.veil.api.client.render.framebuffer.VeilFramebuffers; import foundry.veil.api.client.render.post.PostPipeline; import foundry.veil.api.client.render.post.PostProcessingManager; +import foundry.veil.ext.RenderTargetExtension; +import net.minecraft.client.Minecraft; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.ApiStatus; @@ -39,13 +41,15 @@ public static void bind(int mask) { VeilRenderSystem.renderer().getFramebufferManager().setFramebuffer(VeilFramebuffers.FIRST_PERSON, firstPerson); firstPerson.bind(false); firstPerson.clear(mask); - enabled = true; + // This redirects calls to the vanilla framebuffer to the first person buffer instead + ((RenderTargetExtension) Minecraft.getInstance().getMainRenderTarget()).veil$setWrapper(firstPerson); } public static void unbind() { + ((RenderTargetExtension) Minecraft.getInstance().getMainRenderTarget()).veil$setWrapper(null); + VeilRenderer renderer = VeilRenderSystem.renderer(); PostProcessingManager postProcessingManager = renderer.getPostProcessingManager(); - enabled = false; PostPipeline pipeline = postProcessingManager.getPipeline(FIRST_PERSON); if (pipeline == null) { @@ -57,9 +61,7 @@ public static void unbind() { postProcessingManager.runPipeline(pipeline, false); } - if (!renderer.getDynamicBufferManger().clearRenderState(true)) { - AdvancedFbo.unbind(); - } + AdvancedFbo.unbind(); } public static void free() {