diff --git a/src/main/java/com/seibel/lod/builders/bufferBuilding/LodBufferBuilder.java b/src/main/java/com/seibel/lod/builders/bufferBuilding/LodBufferBuilder.java index 915d375ab..de5238018 100644 --- a/src/main/java/com/seibel/lod/builders/bufferBuilding/LodBufferBuilder.java +++ b/src/main/java/com/seibel/lod/builders/bufferBuilding/LodBufferBuilder.java @@ -415,7 +415,7 @@ public class LodBufferBuilder //We send the call to create the vertices LodConfig.CLIENT.graphics.advancedGraphicsOption.lodTemplate.get().template.addLodToBuffer(currentBuffers[bufferIndex], playerBlockPosRounded, data, adjData, - detailLevel, posX, posZ, box, renderer.previousDebugMode, renderer.lightMap, adjShadeDisabled); + detailLevel, posX, posZ, box, renderer.previousDebugMode, adjShadeDisabled); } diff --git a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/AbstractLodTemplate.java b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/AbstractLodTemplate.java index 118e571a2..daff1fa0f 100644 --- a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/AbstractLodTemplate.java +++ b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/AbstractLodTemplate.java @@ -25,7 +25,6 @@ import com.seibel.lod.enums.DebugMode; import com.seibel.lod.util.ColorUtil; import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.NativeImage; import net.minecraft.util.Direction; import net.minecraft.util.math.BlockPos; @@ -40,7 +39,7 @@ public abstract class AbstractLodTemplate /** Uploads the given LOD to the buffer. */ public abstract void addLodToBuffer(BufferBuilder buffer, BlockPos bufferCenterBlockPos, long data, Map adjData, - byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, NativeImage lightMap, boolean[] adjShadeDisabled); + byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, boolean[] adjShadeDisabled); /** add the given position and color to the buffer */ protected void addPosAndColor(BufferBuilder buffer, diff --git a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/CubicLodTemplate.java b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/CubicLodTemplate.java index a46c6af46..677dc7c7d 100644 --- a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/CubicLodTemplate.java +++ b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/CubicLodTemplate.java @@ -25,10 +25,8 @@ import com.seibel.lod.enums.DebugMode; import com.seibel.lod.util.ColorUtil; import com.seibel.lod.util.DataPointUtil; import com.seibel.lod.util.LodUtil; -import com.seibel.lod.wrappers.MinecraftWrapper; import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.NativeImage; import net.minecraft.util.Direction; import net.minecraft.util.math.BlockPos; @@ -47,7 +45,7 @@ public class CubicLodTemplate extends AbstractLodTemplate @Override public void addLodToBuffer(BufferBuilder buffer, BlockPos bufferCenterBlockPos, long data, Map adjData, - byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, NativeImage lightMap, boolean[] adjShadeDisabled) + byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, boolean[] adjShadeDisabled) { if (box == null) return; @@ -128,7 +126,7 @@ public class CubicLodTemplate extends AbstractLodTemplate color = box.getColor(direction); skyLight = box.getSkyLight(direction, verticalFaceIndex); blockLight = box.getBlockLight(); - color = ColorUtil.applyLightValue(color, skyLight, blockLight, MinecraftWrapper.INSTANCE.getCurrentLightMap()); + color = ColorUtil.applyLightValue(color, skyLight, blockLight); addPosAndColor(buffer, box.getX(direction, vertexIndex), box.getY(direction, vertexIndex, verticalFaceIndex), diff --git a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/DynamicLodTemplate.java b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/DynamicLodTemplate.java index a7ec3c87b..dd88744ab 100644 --- a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/DynamicLodTemplate.java +++ b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/DynamicLodTemplate.java @@ -25,7 +25,6 @@ import com.seibel.lod.enums.DebugMode; import com.seibel.lod.proxy.ClientProxy; import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.NativeImage; import net.minecraft.util.Direction; import net.minecraft.util.math.BlockPos; @@ -41,7 +40,7 @@ public class DynamicLodTemplate extends AbstractLodTemplate { @Override public void addLodToBuffer(BufferBuilder buffer, BlockPos bufferCenterBlockPos, long data, Map adjData, - byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, NativeImage lightMap, boolean[] adjShadeDisabled) + byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, boolean[] adjShadeDisabled) { ClientProxy.LOGGER.error(DynamicLodTemplate.class.getSimpleName() + " is not implemented!"); } diff --git a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/TriangularLodTemplate.java b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/TriangularLodTemplate.java index 9ad30e317..765399455 100644 --- a/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/TriangularLodTemplate.java +++ b/src/main/java/com/seibel/lod/builders/bufferBuilding/lodTemplates/TriangularLodTemplate.java @@ -25,7 +25,6 @@ import com.seibel.lod.enums.DebugMode; import com.seibel.lod.proxy.ClientProxy; import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.NativeImage; import net.minecraft.util.Direction; import net.minecraft.util.math.BlockPos; @@ -39,7 +38,7 @@ public class TriangularLodTemplate extends AbstractLodTemplate { @Override public void addLodToBuffer(BufferBuilder buffer, BlockPos bufferCenterBlockPos, long data, Map adjData, - byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, NativeImage lightMap, boolean[] adjShadeDisabled) + byte detailLevel, int posX, int posZ, Box box, DebugMode debugging, boolean[] adjShadeDisabled) { ClientProxy.LOGGER.error(DynamicLodTemplate.class.getSimpleName() + " is not implemented!"); } diff --git a/src/main/java/com/seibel/lod/render/LodRenderer.java b/src/main/java/com/seibel/lod/render/LodRenderer.java index c9aa5fa6a..1753b90f6 100644 --- a/src/main/java/com/seibel/lod/render/LodRenderer.java +++ b/src/main/java/com/seibel/lod/render/LodRenderer.java @@ -49,7 +49,6 @@ import com.seibel.lod.wrappers.MinecraftWrapper; import net.minecraft.client.renderer.ActiveRenderInfo; import net.minecraft.client.renderer.GameRenderer; -import net.minecraft.client.renderer.texture.NativeImage; import net.minecraft.client.renderer.vertex.VertexBuffer; import net.minecraft.potion.Effects; import net.minecraft.profiler.IProfiler; @@ -104,9 +103,6 @@ public class LodRenderer /** This is used to determine if the LODs should be regenerated */ private int[] previousPos = new int[] { 0, 0, 0 }; - public NativeImage lightMap = null; - public NativeImage lastLightMap = null; - // these variables are used to determine if the buffers should be rebuilt private float prevSkyBrightness = 0; private double prevBrightness = 0; @@ -866,10 +862,9 @@ public class LodRenderer // (just in case the minLightingDifference is too large to notice the change) || (skyBrightness == 1.0f && prevSkyBrightness != 1.0f) // noon || (skyBrightness == 0.2f && prevSkyBrightness != 0.2f) // midnight - || mc.getOptions().gamma != prevBrightness || lightMap == null) + || mc.getOptions().gamma != prevBrightness) { fullRegen = true; - lightMap = mc.getCurrentLightMap(); prevBrightness = mc.getOptions().gamma; prevSkyBrightness = skyBrightness; } diff --git a/src/main/java/com/seibel/lod/util/ColorUtil.java b/src/main/java/com/seibel/lod/util/ColorUtil.java index 7a814dd08..d8456b9aa 100644 --- a/src/main/java/com/seibel/lod/util/ColorUtil.java +++ b/src/main/java/com/seibel/lod/util/ColorUtil.java @@ -21,7 +21,7 @@ package com.seibel.lod.util; import java.awt.Color; -import net.minecraft.client.renderer.texture.NativeImage; +import com.seibel.lod.wrappers.MinecraftWrapper; /** * @@ -78,9 +78,9 @@ public class ColorUtil } /** This method apply the lightmap to the color to use */ - public static int applyLightValue(int color, int skyLight, int blockLight, NativeImage lightMap) + public static int applyLightValue(int color, int skyLight, int blockLight) { - int lightColor = lightMap.getPixelRGBA(blockLight, skyLight); + int lightColor = MinecraftWrapper.INSTANCE.getColorIntFromLightMap(blockLight, skyLight); int red = ColorUtil.getBlue(lightColor); int green = ColorUtil.getGreen(lightColor); int blue = ColorUtil.getRed(lightColor);