aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2024-12-31 04:11:19 -0500
committerAaron <51387595+AzureAaron@users.noreply.github.com>2024-12-31 04:11:19 -0500
commit8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6 (patch)
treefd4605bfd04f2267bdc4cfd5a53d13dfa9047d3d /src/main/java
parent36756dd758fc66eeae4135cf7f0e6c7b9c23616c (diff)
downloadSkyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.tar.gz
Skyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.tar.bz2
Skyblocker-8e56d1a26c2c0f75f46704b13ba3162cf5ddf2a6.zip
Fix depth testing
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/BackpackPreview.java1
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/profileviewer/ProfileViewerNavButton.java5
-rw-r--r--src/main/java/de/hysky/skyblocker/utils/render/RenderHelper.java16
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();
}