From c744ecbf8b1c029e6f27b0b46571578124a895ff Mon Sep 17 00:00:00 2001 From: tildejustin Date: Sun, 23 Mar 2025 18:19:03 -0400 Subject: [PATCH 1/3] reset nv fog mode to planar if it ever gets set to radial --- .../features/options/MixinBackgroundRenderer.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinBackgroundRenderer.java b/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinBackgroundRenderer.java index 3c3756d3b..dcdc17980 100644 --- a/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinBackgroundRenderer.java +++ b/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinBackgroundRenderer.java @@ -1,8 +1,10 @@ package me.jellysquid.mods.sodium.mixin.features.options; -import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.platform.GlStateManager; import me.jellysquid.mods.sodium.client.SodiumClientMod; import net.minecraft.client.render.BackgroundRenderer; +import org.lwjgl.opengl.GL; +import org.lwjgl.opengl.NVFogDistance; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Redirect; @@ -11,10 +13,9 @@ public abstract class MixinBackgroundRenderer { @Redirect(method = "applyFog", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/systems/RenderSystem;setupNvFogDistance()V")) private static void redirectSetupNvFogDistance() { - if (SodiumClientMod.options().speedrun.usePlanarFog) { - return; - } else { - RenderSystem.setupNvFogDistance(); + if (GL.getCapabilities().GL_NV_fog_distance) { + int fogType = SodiumClientMod.options().speedrun.usePlanarFog ? NVFogDistance.GL_EYE_PLANE_ABSOLUTE_NV : NVFogDistance.GL_EYE_RADIAL_NV; + GlStateManager.fogi(NVFogDistance.GL_FOG_DISTANCE_MODE_NV, fogType); } } } From b1649895574e5b80b1ce046580d89e5fee8b05a7 Mon Sep 17 00:00:00 2001 From: tildejustin Date: Sun, 23 Mar 2025 18:23:28 -0400 Subject: [PATCH 2/3] don't allow enabling vignette on fast texture pack parity --- .../sodium/mixin/features/options/MixinInGameHud.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinInGameHud.java b/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinInGameHud.java index 1d4112dd4..3ed793d63 100644 --- a/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinInGameHud.java +++ b/src/main/java/me/jellysquid/mods/sodium/mixin/features/options/MixinInGameHud.java @@ -1,15 +1,15 @@ package me.jellysquid.mods.sodium.mixin.features.options; +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; import me.jellysquid.mods.sodium.client.SodiumClientMod; import net.minecraft.client.gui.hud.InGameHud; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; @Mixin(InGameHud.class) public class MixinInGameHud { - @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/MinecraftClient;isFancyGraphicsOrBetter()Z")) - private boolean redirectFancyGraphicsVignette() { - return SodiumClientMod.options().quality.enableVignette; + @ModifyExpressionValue(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/MinecraftClient;isFancyGraphicsOrBetter()Z")) + private boolean redirectFancyGraphicsVignette(boolean original) { + return original && SodiumClientMod.options().quality.enableVignette; } } From c14da18613acb7f89deec616b62635137daecc42 Mon Sep 17 00:00:00 2001 From: tildejustin Date: Sun, 23 Mar 2025 18:25:56 -0400 Subject: [PATCH 3/3] update action --- .github/workflows/build.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 142ef7668..0c1660e37 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,12 +14,7 @@ jobs: - name: checkout repository uses: actions/checkout@v4 - name: validate gradle wrapper - uses: gradle/wrapper-validation-action@v1 - - name: setup java - uses: actions/setup-java@v4 - with: - distribution: "temurin" - java-version: 21 + uses: gradle/actions/wrapper-validation@v4 - name: build run: | chmod +x ./gradlew