From a46a2230700a5da4e2448ef1894aee916d4bbe9b Mon Sep 17 00:00:00 2001 From: CrushedPixel Date: Fri, 17 Jul 2015 13:12:50 +0200 Subject: [PATCH] Cleaned up OpenGL calls in CustomObjectRenderer and PathPreviewRenderer --- .../renderer/CustomObjectRenderer.java | 15 ++------------- .../replaymod/renderer/PathPreviewRenderer.java | 17 ++++++----------- 2 files changed, 8 insertions(+), 24 deletions(-) diff --git a/src/main/java/eu/crushedpixel/replaymod/renderer/CustomObjectRenderer.java b/src/main/java/eu/crushedpixel/replaymod/renderer/CustomObjectRenderer.java index f8dcfd81..ae7ceb2e 100644 --- a/src/main/java/eu/crushedpixel/replaymod/renderer/CustomObjectRenderer.java +++ b/src/main/java/eu/crushedpixel/replaymod/renderer/CustomObjectRenderer.java @@ -24,31 +24,20 @@ public class CustomObjectRenderer { @SubscribeEvent public void renderCustomObjects(RenderWorldLastEvent event) { - if(!ReplayHandler.isInReplay() || mc.getRenderViewEntity() == null) return; + if(!ReplayHandler.isInReplay() || mc.getRenderViewEntity() == null || ReplayHandler.getCustomImageObjects().isEmpty()) return; double dX = mc.getRenderViewEntity().lastTickPosX + (mc.getRenderViewEntity().posX - mc.getRenderViewEntity().lastTickPosX) * (double)event.partialTicks; double dY = mc.getRenderViewEntity().lastTickPosY + (mc.getRenderViewEntity().posY - mc.getRenderViewEntity().lastTickPosY) * (double)event.partialTicks; double dZ = mc.getRenderViewEntity().lastTickPosZ + (mc.getRenderViewEntity().posZ - mc.getRenderViewEntity().lastTickPosZ) * (double)event.partialTicks; - GlStateManager.pushAttrib(); - GlStateManager.pushMatrix(); - GlStateManager.enableTexture2D(); - GlStateManager.disableLighting(); - GlStateManager.enableAlpha(); - GlStateManager.enableDepth(); - + GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); for(CustomImageObject object : ReplayHandler.getCustomImageObjects()) { drawCustomImageObject(dX, dY, dZ, object); } - - GlStateManager.enableLighting(); - GlStateManager.disableBlend(); - GlStateManager.popAttrib(); - GlStateManager.popMatrix(); } private void drawCustomImageObject(double playerX, double playerY, double playerZ, CustomImageObject customImageObject) { diff --git a/src/main/java/eu/crushedpixel/replaymod/renderer/PathPreviewRenderer.java b/src/main/java/eu/crushedpixel/replaymod/renderer/PathPreviewRenderer.java index e1eefd3e..23ae7b40 100644 --- a/src/main/java/eu/crushedpixel/replaymod/renderer/PathPreviewRenderer.java +++ b/src/main/java/eu/crushedpixel/replaymod/renderer/PathPreviewRenderer.java @@ -3,8 +3,8 @@ package eu.crushedpixel.replaymod.renderer; import eu.crushedpixel.replaymod.ReplayMod; import eu.crushedpixel.replaymod.events.KeyframesModifyEvent; import eu.crushedpixel.replaymod.gui.overlay.GuiReplayOverlay; -import eu.crushedpixel.replaymod.holders.Keyframe; import eu.crushedpixel.replaymod.holders.AdvancedPosition; +import eu.crushedpixel.replaymod.holders.Keyframe; import eu.crushedpixel.replaymod.interpolation.KeyframeList; import eu.crushedpixel.replaymod.replay.ReplayHandler; import net.minecraft.client.Minecraft; @@ -44,9 +44,6 @@ public class PathPreviewRenderer { double doubleY = entity.posY; double doubleZ = entity.posZ; - GlStateManager.pushAttrib(); - GlStateManager.pushMatrix(); - GlStateManager.disableLighting(); GlStateManager.disableTexture2D(); GlStateManager.enableBlend(); @@ -87,6 +84,7 @@ public class PathPreviewRenderer { GlStateManager.enableTexture2D(); GlStateManager.blendFunc(GL11.GL_DST_COLOR, GL11.GL_SRC_COLOR); + GlStateManager.disableDepth(); for(Keyframe kf : distanceSorted) { @@ -102,13 +100,7 @@ public class PathPreviewRenderer { } } - GlStateManager.disableAlpha(); - GlStateManager.disableTexture2D(); GlStateManager.disableBlend(); - GlStateManager.enableLighting(); - - GlStateManager.popAttrib(); - GlStateManager.popMatrix(); } @SubscribeEvent @@ -138,6 +130,8 @@ public class PathPreviewRenderer { } private void drawConnection(double playerX, double playerY, double playerZ, AdvancedPosition pos1, AdvancedPosition pos2, int color) { + GlStateManager.pushMatrix(); + Tessellator tessellator = Tessellator.getInstance(); WorldRenderer renderer = tessellator.getWorldRenderer(); @@ -158,6 +152,8 @@ public class PathPreviewRenderer { tessellator.draw(); renderer.setTranslation(0, 0, 0); + + GlStateManager.popMatrix(); } private void drawPoint(double playerX, double playerY, double playerZ, Keyframe kf) { @@ -298,7 +294,6 @@ public class PathPreviewRenderer { renderer.addVertexWithUV(x + cubeSize, y + cubeSize, z, 2 * 8 / 64f, 0); Tessellator.getInstance().draw(); - renderer.setTranslation(0, 0, 0); GlStateManager.popMatrix();