diff --git a/src/main/java/com/seibel/lod/common/wrappers/DependencySetup.java b/src/main/java/com/seibel/lod/common/wrappers/DependencySetup.java index 9204ff3e8..c6c15057c 100644 --- a/src/main/java/com/seibel/lod/common/wrappers/DependencySetup.java +++ b/src/main/java/com/seibel/lod/common/wrappers/DependencySetup.java @@ -1,7 +1,7 @@ package com.seibel.lod.common.wrappers; import com.seibel.lod.common.wrappers.block.BlockColorSingletonWrapper; -import com.seibel.lod.fabric.wrappers.minecraft.MinecraftRenderWrapper; +import com.seibel.lod.common.wrappers.minecraft.MinecraftRenderWrapper; import com.seibel.lod.common.wrappers.minecraft.MinecraftWrapper; import com.seibel.lod.core.handlers.IReflectionHandler; import com.seibel.lod.core.handlers.ReflectionHandler; diff --git a/src/main/java/com/seibel/lod/common/wrappers/WrapperFactory.java b/src/main/java/com/seibel/lod/common/wrappers/WrapperFactory.java index 78033aacf..4383458a8 100644 --- a/src/main/java/com/seibel/lod/common/wrappers/WrapperFactory.java +++ b/src/main/java/com/seibel/lod/common/wrappers/WrapperFactory.java @@ -28,7 +28,7 @@ import com.seibel.lod.core.wrapperInterfaces.world.IWorldWrapper; import com.seibel.lod.core.wrapperInterfaces.worldGeneration.AbstractWorldGeneratorWrapper; import com.seibel.lod.common.wrappers.block.BlockPosWrapper; import com.seibel.lod.common.wrappers.chunk.ChunkPosWrapper; -import com.seibel.lod.fabric.wrappers.worldGeneration.WorldGeneratorWrapper; +import com.seibel.lod.common.wrappers.worldGeneration.WorldGeneratorWrapper; /** * This handles creating abstract wrapper objects. diff --git a/src/main/java/com/seibel/lod/fabric/wrappers/minecraft/MinecraftRenderWrapper.java b/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java similarity index 98% rename from src/main/java/com/seibel/lod/fabric/wrappers/minecraft/MinecraftRenderWrapper.java rename to src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java index ab21fa7f5..cb3e608c2 100644 --- a/src/main/java/com/seibel/lod/fabric/wrappers/minecraft/MinecraftRenderWrapper.java +++ b/src/main/java/com/seibel/lod/common/wrappers/minecraft/MinecraftRenderWrapper.java @@ -1,4 +1,4 @@ -package com.seibel.lod.fabric.wrappers.minecraft; +package com.seibel.lod.common.wrappers.minecraft; import java.awt.*; import java.util.HashSet; @@ -142,7 +142,6 @@ public class MinecraftRenderWrapper implements IMinecraftRenderWrapper // go through every RenderInfo to get the compiled chunks LevelRenderer renderer = mc.levelRenderer; - // TODO[1.18]: Fix this /* for (RenderChunkInfo worldRenderer$LocalRenderInformationContainer : renderer.renderChunks) { diff --git a/src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/LodServerWorld.java b/src/main/java/com/seibel/lod/common/wrappers/worldGeneration/LodServerWorld.java similarity index 98% rename from src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/LodServerWorld.java rename to src/main/java/com/seibel/lod/common/wrappers/worldGeneration/LodServerWorld.java index 922821627..4d3f9a15f 100644 --- a/src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/LodServerWorld.java +++ b/src/main/java/com/seibel/lod/common/wrappers/worldGeneration/LodServerWorld.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.fabric.wrappers.worldGeneration; +package com.seibel.lod.common.wrappers.worldGeneration; import java.util.HashMap; import java.util.List; @@ -60,7 +60,6 @@ import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.storage.LevelData; import net.minecraft.world.phys.AABB; import net.minecraft.world.ticks.LevelTickAccess; -import net.minecraft.world.ticks.TickAccess; import org.jetbrains.annotations.Nullable; @@ -70,9 +69,8 @@ import org.jetbrains.annotations.Nullable; * of the actual ServerWorld, allowing * multithread generation. * - * @author coolGi2007 * @author James Seibel - * @version 12-06-2021 + * @version 7-26-2021 */ public class LodServerWorld implements WorldGenLevel { diff --git a/src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/WorldGeneratorWrapper.java b/src/main/java/com/seibel/lod/common/wrappers/worldGeneration/WorldGeneratorWrapper.java similarity index 99% rename from src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/WorldGeneratorWrapper.java rename to src/main/java/com/seibel/lod/common/wrappers/worldGeneration/WorldGeneratorWrapper.java index da5d5e5a8..dd65ad0cd 100644 --- a/src/main/java/com/seibel/lod/fabric/wrappers/worldGeneration/WorldGeneratorWrapper.java +++ b/src/main/java/com/seibel/lod/common/wrappers/worldGeneration/WorldGeneratorWrapper.java @@ -1,4 +1,4 @@ -package com.seibel.lod.fabric.wrappers.worldGeneration; +package com.seibel.lod.common.wrappers.worldGeneration; import java.util.ConcurrentModificationException; import java.util.HashSet; @@ -24,7 +24,6 @@ import com.seibel.lod.common.wrappers.chunk.ChunkPosWrapper; import com.seibel.lod.common.wrappers.chunk.ChunkWrapper; import com.seibel.lod.common.wrappers.world.WorldWrapper; -import com.seibel.lod.fabric.wrappers.worldGeneration.LodServerWorld; import net.minecraft.core.Registry; import net.minecraft.server.level.ServerChunkCache; import net.minecraft.server.level.ServerLevel; diff --git a/src/main/java/com/seibel/lod/core/util/DetailDistanceUtil.java b/src/main/java/com/seibel/lod/core/util/DetailDistanceUtil.java index 67793fa3f..3976a46c7 100644 --- a/src/main/java/com/seibel/lod/core/util/DetailDistanceUtil.java +++ b/src/main/java/com/seibel/lod/core/util/DetailDistanceUtil.java @@ -96,14 +96,14 @@ public class DetailDistanceUtil public static byte baseInverseFunction(int distance, byte minDetail, boolean useRenderMinDistance) { - int detail; + byte detail; if (distance == 0 || (distance < minDetailDistance && useRenderMinDistance) || CONFIG.client().graphics().advancedGraphics().getAlwaysDrawAtMaxQuality()) return minDetail; int distanceUnit = CONFIG.client().graphics().quality().getHorizontalScale() * 16; if (CONFIG.client().graphics().quality().getHorizontalQuality() == HorizontalQuality.LOWEST) - detail = (byte) distance / distanceUnit; + detail = (byte) (distance / distanceUnit); else { double base = CONFIG.client().graphics().quality().getHorizontalQuality().quadraticBase; diff --git a/src/main/java/com/seibel/lod/common/mixins/MixinOptionsScreen.java b/src/main/java/com/seibel/lod/fabric/mixins/MixinOptionsScreen.java similarity index 98% rename from src/main/java/com/seibel/lod/common/mixins/MixinOptionsScreen.java rename to src/main/java/com/seibel/lod/fabric/mixins/MixinOptionsScreen.java index e22a21c92..6e6b4dbb5 100644 --- a/src/main/java/com/seibel/lod/common/mixins/MixinOptionsScreen.java +++ b/src/main/java/com/seibel/lod/fabric/mixins/MixinOptionsScreen.java @@ -1,4 +1,4 @@ -package com.seibel.lod.common.mixins; +package com.seibel.lod.fabric.mixins; import com.seibel.lod.common.wrappers.config.ConfigGui; import com.seibel.lod.common.wrappers.config.TexturedButtonWidget; diff --git a/src/main/java/com/seibel/lod/common/mixins/MixinWorldRenderer.java b/src/main/java/com/seibel/lod/fabric/mixins/MixinWorldRenderer.java similarity index 82% rename from src/main/java/com/seibel/lod/common/mixins/MixinWorldRenderer.java rename to src/main/java/com/seibel/lod/fabric/mixins/MixinWorldRenderer.java index 7986e811b..ea4d076ee 100644 --- a/src/main/java/com/seibel/lod/common/mixins/MixinWorldRenderer.java +++ b/src/main/java/com/seibel/lod/fabric/mixins/MixinWorldRenderer.java @@ -17,27 +17,30 @@ * along with this program. If not, see . */ -package com.seibel.lod.common.mixins; +package com.seibel.lod.fabric.mixins; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.math.Matrix4f; import com.seibel.lod.common.wrappers.McObjectConverter; -import com.seibel.lod.core.api.ClientApi; -import com.seibel.lod.core.objects.math.Mat4f; import net.minecraft.client.renderer.LevelRenderer; -import net.minecraft.client.renderer.RenderType; +import org.lwjgl.opengl.GL15; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import com.seibel.lod.core.api.ClientApi; +import com.seibel.lod.core.objects.math.Mat4f; + +import net.minecraft.client.renderer.RenderType; + /** * This class is used to mix in my rendering code * before Minecraft starts rendering blocks. * If this wasn't done, and we used Forge's * render last event, the LODs would render on top * of the normal terrain. - * + * * @author coolGi2007 * @author James Seibel * @version 11-21-2021 @@ -47,13 +50,13 @@ public class MixinWorldRenderer { private static float previousPartialTicks = 0; - @Inject(at = @At("RETURN"), method = "renderClouds(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/math/Matrix4f;FDDD)V") - private void renderClouds(PoseStack modelViewMatrixStack, Matrix4f projectionMatrix, float partialTicks, double cameraXBlockPos, double cameraYBlockPos, double cameraZBlockPos, CallbackInfo callback) - { - // get the partial ticks since renderChunkLayer doesn't - // have access to them - previousPartialTicks = partialTicks; - } +// @Inject(at = @At("RETURN"), method = "renderClouds(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/math/Matrix4f;FDDD)V") +// private void renderClouds(PoseStack modelViewMatrixStack, Matrix4f projectionMatrix, float partialTicks, double cameraXBlockPos, double cameraYBlockPos, double cameraZBlockPos, CallbackInfo callback) +// { +// // get the partial ticks since renderChunkLayer doesn't +// // have access to them +// previousPartialTicks = partialTicks; +// } // HEAD or RETURN @Inject(at = @At("HEAD"), method = "renderChunkLayer(Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLcom/mojang/math/Matrix4f;)V") diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 9e6700246..6b6f2160f 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -31,8 +31,7 @@ }, "mixins": [ - "lod.mixins.json", - "lod.common.mixins.json" + "lod.mixins.json" ], "accessWidener" : "lod.accesswidener", diff --git a/src/main/resources/lod.common.mixins.json b/src/main/resources/lod.common.mixins.json deleted file mode 100644 index ec976a475..000000000 --- a/src/main/resources/lod.common.mixins.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "required": true, - "minVersion": "0.8", - "package": "com.seibel.lod.common.mixins", - "compatibilityLevel": "JAVA_17", - "mixins": [], - "client": [ - "MixinOptionsScreen", - "MixinWorldRenderer" - ], - "server": [], - "injectors": { - "defaultRequire": 1 - } -} \ No newline at end of file diff --git a/src/main/resources/lod.mixins.json b/src/main/resources/lod.mixins.json index f25127bd0..e82e94f4f 100644 --- a/src/main/resources/lod.mixins.json +++ b/src/main/resources/lod.mixins.json @@ -6,6 +6,8 @@ "mixins": [], "client": [ "MixinMinecraft", + "MixinOptionsScreen", + "MixinWorldRenderer", "events.MixinClientLevel", "events.MixinMinecraft", "events.MixinServerLevel"