From 000ff197498018d3e1af93df464a34bc96134a0b Mon Sep 17 00:00:00 2001 From: Jonas Herzig Date: Wed, 7 Dec 2022 14:32:16 +0100 Subject: [PATCH] Fix depth export while spectating on 1.12.2 and below (fixes #785) --- .../mixin/Mixin_PreserveDepthDuringHandRendering.java | 9 ++++++--- src/main/resources/mixins.render.replaymod.json | 4 +--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/replaymod/render/mixin/Mixin_PreserveDepthDuringHandRendering.java b/src/main/java/com/replaymod/render/mixin/Mixin_PreserveDepthDuringHandRendering.java index fb7e3877..1920db95 100644 --- a/src/main/java/com/replaymod/render/mixin/Mixin_PreserveDepthDuringHandRendering.java +++ b/src/main/java/com/replaymod/render/mixin/Mixin_PreserveDepthDuringHandRendering.java @@ -10,13 +10,16 @@ import org.spongepowered.asm.mixin.injection.ModifyArg; @Mixin(GameRenderer.class) public abstract class Mixin_PreserveDepthDuringHandRendering { @ModifyArg( - // FIXME preprocessor bug: 1.8.9 uses method with `(FJ)V` when just name would be enough - //#if MC>=10809 + //#if MC>=11400 method = "renderWorld", //#else - //$$ method = "updateCameraAndRender(F)V", + //$$ method = "renderWorldPass", //#endif + //#if MC>=11400 at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/systems/RenderSystem;clear(IZ)V"), + //#else + //$$ at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/GlStateManager;clear(I)V", ordinal = 1), + //#endif index = 0 ) private int replayModRender_skipClearWhenRecordingDepth(int mask) { diff --git a/src/main/resources/mixins.render.replaymod.json b/src/main/resources/mixins.render.replaymod.json index 8bd2c8b6..2759769b 100644 --- a/src/main/resources/mixins.render.replaymod.json +++ b/src/main/resources/mixins.render.replaymod.json @@ -16,6 +16,7 @@ "Mixin_Omnidirectional_Camera", "Mixin_Omnidirectional_Rotation", "Mixin_PreserveDepthDuringGuiRendering", + "Mixin_PreserveDepthDuringHandRendering", "Mixin_SkipBlockOutlinesDuringRender", "Mixin_SkipHudDuringRender", "Mixin_StabilizeCamera", @@ -34,9 +35,6 @@ //$$ "MixinChunkRenderWorker", //#endif //#endif - //#if MC>=11400 - "Mixin_PreserveDepthDuringHandRendering", - //#endif "GameRendererAccessor", "MainWindowAccessor", "WorldRendererAccessor",