diff options
| author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2024-12-31 04:11:19 -0500 |
|---|---|---|
| committer | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2024-12-31 04:11:19 -0500 |
| commit | 8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6 (patch) | |
| tree | fd4605bfd04f2267bdc4cfd5a53d13dfa9047d3d /src/main/java | |
| parent | 36756dd758fc66eeae4135cf7f0e6c7b9c23616c (diff) | |
| download | Skyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.tar.gz Skyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.tar.bz2 Skyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.zip | |
Fix depth testing
Diffstat (limited to 'src/main/java')
3 files changed, 15 insertions, 7 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/BackpackPreview.java b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/BackpackPreview.java index 84580346..27c20f7a 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/BackpackPreview.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/BackpackPreview.java @@ -179,6 +179,7 @@ public class BackpackPreview { } matrices.pop(); + RenderSystem.disableDepthTest(); return true; } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/ProfileViewerNavButton.java b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/ProfileViewerNavButton.java index e3946223..dc0141c0 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/ProfileViewerNavButton.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/ProfileViewerNavButton.java @@ -1,6 +1,5 @@ package de.hysky.skyblocker.skyblock.profileviewer; -import com.mojang.blaze3d.systems.RenderSystem; import de.hysky.skyblocker.skyblock.profileviewer.utils.ProfileViewerUtils; import de.hysky.skyblocker.skyblock.tabhud.util.Ico; import net.minecraft.client.gui.DrawContext; @@ -40,12 +39,8 @@ public class ProfileViewerNavButton extends ClickableWidget { @Override protected void renderWidget(DrawContext context, int mouseX, int mouseY, float delta) { - RenderSystem.disableDepthTest(); - context.drawGuiTexture(RenderLayer::getGuiTextured, toggled ? BUTTON_TEXTURES_TOGGLED : BUTTON_TEXTURES, this.getX(), this.getY(), this.width, this.height - ((this.toggled) ? 0 : 4)); context.drawItem(this.icon, this.getX() + 6, this.getY() + (this.toggled ? 7 : 9)); - - RenderSystem.enableDepthTest(); } @Override diff --git a/src/main/java/de/hysky/skyblocker/utils/render/RenderHelper.java b/src/main/java/de/hysky/skyblocker/utils/render/RenderHelper.java index a56da2e8..e203767a 100644 --- a/src/main/java/de/hysky/skyblocker/utils/render/RenderHelper.java +++ b/src/main/java/de/hysky/skyblocker/utils/render/RenderHelper.java @@ -213,6 +213,7 @@ public class RenderHelper { RenderSystem.lineWidth(1f); RenderSystem.enableCull(); RenderSystem.depthFunc(GL11.GL_LEQUAL); + RenderSystem.disableDepthTest(); } public static void renderLineFromCursor(WorldRenderContext context, Vec3d point, float[] colorComponents, float alpha, float lineWidth) { @@ -261,6 +262,7 @@ public class RenderHelper { RenderSystem.lineWidth(1f); RenderSystem.enableCull(); RenderSystem.depthFunc(GL11.GL_LEQUAL); + RenderSystem.disableDepthTest(); } public static void renderQuad(WorldRenderContext context, Vec3d[] points, float[] colorComponents, float alpha, boolean throughWalls) { @@ -276,6 +278,7 @@ public class RenderHelper { RenderSystem.enableBlend(); RenderSystem.defaultBlendFunc(); RenderSystem.disableCull(); + RenderSystem.enableDepthTest(); RenderSystem.depthFunc(throughWalls ? GL11.GL_ALWAYS : GL11.GL_LEQUAL); BufferBuilder buffer = tessellator.begin(DrawMode.QUADS, VertexFormats.POSITION_COLOR); @@ -286,6 +289,7 @@ public class RenderHelper { RenderSystem.enableCull(); RenderSystem.depthFunc(GL11.GL_LEQUAL); + RenderSystem.disableDepthTest(); } public static void renderText(WorldRenderContext context, Text text, Vec3d pos, boolean throughWalls) { @@ -323,11 +327,13 @@ public class RenderHelper { VertexConsumerProvider.Immediate consumers = VertexConsumerProvider.immediate(ALLOCATOR); //Don't trust the render layer to do this for you! + RenderSystem.enableDepthTest(); RenderSystem.depthFunc(throughWalls ? GL11.GL_ALWAYS : GL11.GL_LEQUAL); textRenderer.draw(text, xOffset, yOffset, 0xFFFFFFFF, false, positionMatrix, consumers, throughWalls ? TextRenderer.TextLayerType.SEE_THROUGH : TextRenderer.TextLayerType.NORMAL, 0, LightmapTextureManager.MAX_LIGHT_COORDINATE); consumers.draw(); + RenderSystem.disableDepthTest(); RenderSystem.depthFunc(GL11.GL_LEQUAL); } @@ -338,8 +344,14 @@ public class RenderHelper { Profiler profiler = Profilers.get(); profiler.push("skyblockerTranslucentDraw"); - //Draw all render layers that haven't been drawn yet - drawing a specific layer does nothing and idk why - ((VertexConsumerProvider.Immediate) context.consumers()).draw(); + VertexConsumerProvider.Immediate immediate = (VertexConsumerProvider.Immediate) context.consumers(); + + //Work around RenderLayer impl problems (DepthTest#ALWAYS not actually turning off depth testing) + RenderSystem.disableDepthTest(); + immediate.draw(SkyblockerRenderLayers.FILLED_THROUGH_WALLS); + + //Draw all render layers that haven't been drawn yet - drawing a specific layer does nothing and idk why (IF bug maybe?) + immediate.draw(); profiler.pop(); } |
