From f80d7cbb616abdcf2bb20cc4a23dfa564f884bbc Mon Sep 17 00:00:00 2001 From: Pazaz Date: Wed, 27 Apr 2022 03:38:30 -0400 Subject: [PATCH] Improved fog distance scaling --- client/src/main/java/rt4/GlobalConfig.java | 1 + client/src/main/java/rt4/Static156.java | 2 +- client/src/main/java/rt4/Static161.java | 4 ++-- client/src/main/java/rt4/WaterMaterialRenderer.java | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/client/src/main/java/rt4/GlobalConfig.java b/client/src/main/java/rt4/GlobalConfig.java index e8f9764..ca83708 100644 --- a/client/src/main/java/rt4/GlobalConfig.java +++ b/client/src/main/java/rt4/GlobalConfig.java @@ -44,6 +44,7 @@ public class GlobalConfig { // default distance is 28 public static int TILE_DISTANCE = 56; public static int VIEW_DISTANCE = TILE_DISTANCE * 128; + public static float VIEW_FADE_DISTANCE = ((float) TILE_DISTANCE / 28.0f) * 256.0f; public static boolean USE_TWEENING = true; diff --git a/client/src/main/java/rt4/Static156.java b/client/src/main/java/rt4/Static156.java index 8199f3a..5d00c7c 100644 --- a/client/src/main/java/rt4/Static156.java +++ b/client/src/main/java/rt4/Static156.java @@ -110,7 +110,7 @@ public final class Static156 { GlRenderer.setLightingEnabled(false); local1.glDisable(GL2.GL_DEPTH_TEST); local1.glPushAttrib(GL2.GL_FOG_BIT); - local1.glFogf(GL2.GL_FOG_START, (float) GlobalConfig.VIEW_DISTANCE - 512.0f); + local1.glFogf(GL2.GL_FOG_START, (float) GlobalConfig.VIEW_DISTANCE - (GlobalConfig.VIEW_FADE_DISTANCE * 2.0f)); GlRenderer.disableDepthMask(); for (@Pc(19) int local19 = 0; local19 < Static36.surfaceHdTiles[0].length; local19++) { @Pc(31) GlTile local31 = Static36.surfaceHdTiles[0][local19]; diff --git a/client/src/main/java/rt4/Static161.java b/client/src/main/java/rt4/Static161.java index 23c584a..10454d6 100644 --- a/client/src/main/java/rt4/Static161.java +++ b/client/src/main/java/rt4/Static161.java @@ -94,12 +94,12 @@ public final class Static161 { gl.glFogf(GL2.GL_FOG_DENSITY, 0.95F); gl.glHint(GL2.GL_FOG_HINT, GL2.GL_FASTEST); int fogEnd = GlobalConfig.VIEW_DISTANCE; - @Pc(65) int fogStart = fogEnd - 512 - offset; + @Pc(65) int fogStart = fogEnd - (int)(GlobalConfig.VIEW_FADE_DISTANCE * 2.0f) - offset; if (fogStart < 50) { fogStart = 50; } gl.glFogf(GL2.GL_FOG_START, (float) fogStart); - gl.glFogf(GL2.GL_FOG_END, (float) fogEnd - 256.0f); + gl.glFogf(GL2.GL_FOG_END, (float) fogEnd - GlobalConfig.VIEW_FADE_DISTANCE); gl.glFogfv(GL2.GL_FOG_COLOR, fogColor, 0); } diff --git a/client/src/main/java/rt4/WaterMaterialRenderer.java b/client/src/main/java/rt4/WaterMaterialRenderer.java index 05850e5..6e91873 100644 --- a/client/src/main/java/rt4/WaterMaterialRenderer.java +++ b/client/src/main/java/rt4/WaterMaterialRenderer.java @@ -176,7 +176,7 @@ public final class WaterMaterialRenderer implements MaterialRenderer { local1.glCallList(this.anInt4440); @Pc(12) float local12 = 2662.4001F; local12 += (float) (Static254.anInt5559 - 128) * 0.5F; - float max = (float) GlobalConfig.VIEW_DISTANCE - 256.0f; + float max = (float) GlobalConfig.VIEW_DISTANCE - GlobalConfig.VIEW_FADE_DISTANCE; if (local12 >= max) { local12 = max - 1.0f; }