diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/LodRenderProgram.java b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/LodRenderProgram.java index 255653c6a..d044b149d 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/LodRenderProgram.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/LodRenderProgram.java @@ -187,6 +187,10 @@ public class LodRenderProgram extends ShaderProgram implements IDhApiShaderProgr // Clip Uniform float dhNearClipDistance = RenderUtil.getNearClipPlaneDistanceInBlocks(renderParameters.partialTicks); + // TODO a different multiplier might be necessary + // this is to try and allow the fragment culling to go farther than the near clip plane. + // Currently this only works for certain FOV/screen ratio combos. + dhNearClipDistance *= 2.0f; setUniform(clipDistanceUniform, dhNearClipDistance); } diff --git a/core/src/main/java/com/seibel/distanthorizons/core/util/RenderUtil.java b/core/src/main/java/com/seibel/distanthorizons/core/util/RenderUtil.java index 4f4352643..0177d327c 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/util/RenderUtil.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/util/RenderUtil.java @@ -186,13 +186,7 @@ public class RenderUtil public static float getNearClipPlaneDistanceInBlocks(float partialTicks) { int chunkRenderDistance = MC_RENDER.getRenderDistance(); - if (chunkRenderDistance % 2 == 0) - { - chunkRenderDistance += 1; - } - int vanillaBlockRenderedDistance = chunkRenderDistance * LodUtil.CHUNK_WIDTH; - vanillaBlockRenderedDistance *= 2; float nearClipPlane; if (Config.Client.Advanced.Debugging.lodOnlyMode.get())