From 2eab1ddbdbaa857e63acc5cd009c6160578e5b1b Mon Sep 17 00:00:00 2001 From: CrushedPixel Date: Fri, 31 Jul 2015 13:58:27 +0200 Subject: [PATCH] Disable resizing of the game window while rendering if FBOs are not enabled --- .../crushedpixel/replaymod/replay/ReplayProcess.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/main/java/eu/crushedpixel/replaymod/replay/ReplayProcess.java b/src/main/java/eu/crushedpixel/replaymod/replay/ReplayProcess.java index 23f988c6..0a281c32 100755 --- a/src/main/java/eu/crushedpixel/replaymod/replay/ReplayProcess.java +++ b/src/main/java/eu/crushedpixel/replaymod/replay/ReplayProcess.java @@ -14,10 +14,12 @@ import eu.crushedpixel.replaymod.video.VideoRenderer; import lombok.Getter; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiErrorScreen; +import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.chunk.RenderChunk; import net.minecraft.client.resources.I18n; import net.minecraft.crash.CrashReport; import net.minecraft.util.ReportedException; +import org.lwjgl.opengl.Display; import java.io.IOException; @@ -100,6 +102,11 @@ public class ReplayProcess { ReplayMod.chatMessageHandler.addLocalizedChatMessage("replaymod.chat.pathstarted", ChatMessageType.INFORMATION); mc.timer.timerSpeed = 1; } else { + //if FBOs are not enabled/supported, prevent the user from resizing the MC window + if(!OpenGlHelper.isFramebufferEnabled()) { + Display.setResizable(false); + } + initialTimestamp = 0; boolean success = false; try { @@ -139,6 +146,9 @@ public class ReplayProcess { ReplayTimer.get(mc).passive = false; ReplayMod.replaySender.setReplaySpeed(previousReplaySpeed); ReplayMod.replaySender.setReplaySpeed(0); + + //re-enable window resizing after rendering + Display.setResizable(true); } //if justCheck is true, no Screenshot will be taken, it will only be checked