From 46a0c982e1b29fd7300b74aae1cf5bab4d67e364 Mon Sep 17 00:00:00 2001 From: mcrcortex <18544518+MCRcortex@users.noreply.github.com> Date: Sun, 19 Oct 2025 11:53:17 +1000 Subject: [PATCH] vivecraft fixes --- .../core/rendering/ViewportSelector.java | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/ViewportSelector.java b/src/main/java/me/cortex/voxy/client/core/rendering/ViewportSelector.java index f23e9324..10a1f792 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/ViewportSelector.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/ViewportSelector.java @@ -8,6 +8,8 @@ import java.util.HashMap; import java.util.Map; import java.util.function.Supplier; +import static org.vivecraft.api.client.data.RenderPass.VANILLA; + public class ViewportSelector > { public static final boolean VIVECRAFT_INSTALLED = FabricLoader.getInstance().isModLoaded("vivecraft"); @@ -25,27 +27,28 @@ public class ViewportSelector > { } private T getVivecraftViewport() { - var rApi = VRRenderingAPI.instance(); - if (rApi == null) { - return this.defaultViewport; - } - var pass = rApi.getCurrentRenderPass(); - if (pass == null) { - return this.defaultViewport; + var pass = VRRenderingAPI.instance().getCurrentRenderPass(); + if (pass == null || pass == VANILLA) { + return null; } return this.getOrCreate(pass); } private static final Object IRIS_SHADOW_OBJECT = new Object(); public T getViewport() { - if (VIVECRAFT_INSTALLED) { - return getVivecraftViewport(); + T viewport = null; + if (viewport == null && VIVECRAFT_INSTALLED) { + viewport = getVivecraftViewport(); } - if (IrisUtil.irisShadowActive()) { - return this.getOrCreate(IRIS_SHADOW_OBJECT); + if (viewport == null && IrisUtil.irisShadowActive()) { + viewport = this.getOrCreate(IRIS_SHADOW_OBJECT); } - return this.defaultViewport; + + if (viewport == null) { + viewport = this.defaultViewport; + } + return viewport; } public void free() {