From 84c2a687a1bfbbb78735a76361a0a23e1ee77ccc Mon Sep 17 00:00:00 2001 From: tom lee Date: Thu, 10 Feb 2022 21:43:41 +0800 Subject: [PATCH] Update core + Config + fix underwater/blindness fog --- .../src/main/java/com/seibel/lod/common/Config.java | 9 ++------- .../wrappers/config/LodConfigWrapperSingleton.java | 13 ------------- .../wrappers/minecraft/MinecraftRenderWrapper.java | 13 +++++++++++-- core | 2 +- 4 files changed, 14 insertions(+), 23 deletions(-) diff --git a/common/src/main/java/com/seibel/lod/common/Config.java b/common/src/main/java/com/seibel/lod/common/Config.java index ea9a9962e..8ac4b3048 100644 --- a/common/src/main/java/com/seibel/lod/common/Config.java +++ b/common/src/main/java/com/seibel/lod/common/Config.java @@ -98,7 +98,7 @@ public class Config extends ConfigGui @ConfigAnnotations.FileComment public static String _lodChunkRenderDistance = IQuality.LOD_CHUNK_RENDER_DISTANCE_DESC; - @ConfigAnnotations.Entry(minValue = 16, maxValue = 8192) + @ConfigAnnotations.Entry(minValue = 16, maxValue = 2048) public static int lodChunkRenderDistance = IQuality.LOD_CHUNK_RENDER_DISTANCE_MIN_DEFAULT_MAX.defaultValue; @ConfigAnnotations.FileComment @@ -154,11 +154,6 @@ public class Config extends ConfigGui @ConfigAnnotations.Entry public static boolean disableDirectionalCulling = IAdvancedGraphics.DISABLE_DIRECTIONAL_CULLING_DEFAULT; - @ConfigAnnotations.FileComment - public static String _alwaysDrawAtMaxQuality = IAdvancedGraphics.ALWAYS_DRAW_AT_MAD_QUALITY_DESC; - @ConfigAnnotations.Entry - public static boolean alwaysDrawAtMaxQuality = IAdvancedGraphics.ALWAYS_DRAW_AT_MAD_QUALITY_DEFAULT; - @ConfigAnnotations.FileComment public static String _vanillaOverdraw = IAdvancedGraphics.VANILLA_OVERDRAW_DESC; @ConfigAnnotations.Entry @@ -268,7 +263,7 @@ public class Config extends ConfigGui @ConfigAnnotations.FileComment public static String _gpuUploadPerMegabyteInMilliseconds = IBuffers.GPU_UPLOAD_PER_MEGABYTE_IN_MILLISECONDS_DESC; - @ConfigAnnotations.Entry(minValue = 0, maxValue = 5000) + @ConfigAnnotations.Entry(minValue = 0, maxValue = 50) public static int gpuUploadPerMegabyteInMilliseconds = IBuffers.GPU_UPLOAD_PER_MEGABYTE_IN_MILLISECONDS_DEFAULT.defaultValue; @ConfigAnnotations.FileComment diff --git a/common/src/main/java/com/seibel/lod/common/wrappers/config/LodConfigWrapperSingleton.java b/common/src/main/java/com/seibel/lod/common/wrappers/config/LodConfigWrapperSingleton.java index 67a34eb6e..412291e5f 100644 --- a/common/src/main/java/com/seibel/lod/common/wrappers/config/LodConfigWrapperSingleton.java +++ b/common/src/main/java/com/seibel/lod/common/wrappers/config/LodConfigWrapperSingleton.java @@ -262,19 +262,6 @@ public class LodConfigWrapperSingleton implements ILodConfigWrapperSingleton } - @Override - public boolean getAlwaysDrawAtMaxQuality() - { - return Config.Client.Graphics.AdvancedGraphics.alwaysDrawAtMaxQuality; - } - @Override - public void setAlwaysDrawAtMaxQuality(boolean newAlwaysDrawAtMaxQuality) - { - ConfigGui.editSingleOption.getEntry("client.graphics.advancedGraphics.alwaysDrawAtMaxQuality").value = newAlwaysDrawAtMaxQuality; - ConfigGui.editSingleOption.saveOption("client.graphics.advancedGraphics.alwaysDrawAtMaxQuality"); - } - - @Override public VanillaOverdraw getVanillaOverdraw() { diff --git a/common/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java b/common/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java index 4632f04f4..303a14931 100644 --- a/common/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java +++ b/common/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java @@ -43,7 +43,11 @@ import net.minecraft.client.renderer.GameRenderer; import net.minecraft.client.renderer.LevelRenderer; import net.minecraft.client.renderer.chunk.ChunkRenderDispatcher.CompiledChunk; import net.minecraft.core.BlockPos; +import net.minecraft.tags.FluidTags; import net.minecraft.world.effect.MobEffects; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.material.FluidState; import net.minecraft.world.phys.Vec3; @@ -306,8 +310,13 @@ public class MinecraftRenderWrapper implements IMinecraftRenderWrapper @Override public boolean isFogStateSpecial() { -// return GAME_RENDERER.getMainCamera().getFluidInCamera() != FogType.NONE; - return false; // FIXME + Camera camera = GAME_RENDERER.getMainCamera(); + FluidState fluidState = camera.getFluidInCamera(); + Entity entity = camera.getEntity(); + boolean isUnderWater = (entity instanceof LivingEntity) && ((LivingEntity)entity).hasEffect(MobEffects.BLINDNESS); + isUnderWater |= fluidState.is(FluidTags.WATER); + isUnderWater |= fluidState.is(FluidTags.LAVA); + return isUnderWater; } @Override diff --git a/core b/core index d8c082ba4..080d33baf 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit d8c082ba4230ef9877c3e36b6aa5ade18aa73b70 +Subproject commit 080d33baf1a665ca73d89e67ab2977787ebfeb6e