aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/makamys/lodmod/renderer
diff options
context:
space:
mode:
authormakamys <makamys@outlook.com>2021-05-09 07:17:04 +0200
committermakamys <makamys@outlook.com>2021-05-09 07:17:04 +0200
commit0931696d367063a547f1e30be7fa4ac968070f76 (patch)
tree7ae600f619951a8097d44c47ddddf07cdbfe4f75 /src/main/java/makamys/lodmod/renderer
parent7ee84793385544d646be3d18dd3da8904e917939 (diff)
downloadNeodymium-0931696d367063a547f1e30be7fa4ac968070f76.tar.gz
Neodymium-0931696d367063a547f1e30be7fa4ac968070f76.tar.bz2
Neodymium-0931696d367063a547f1e30be7fa4ac968070f76.zip
Patch RenderBlocks to not render sides of water on the edge of the world
Diffstat (limited to 'src/main/java/makamys/lodmod/renderer')
-rw-r--r--src/main/java/makamys/lodmod/renderer/LODRenderer.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/makamys/lodmod/renderer/LODRenderer.java b/src/main/java/makamys/lodmod/renderer/LODRenderer.java
index 017f256..51d0519 100644
--- a/src/main/java/makamys/lodmod/renderer/LODRenderer.java
+++ b/src/main/java/makamys/lodmod/renderer/LODRenderer.java
@@ -1,12 +1,16 @@
package makamys.lodmod.renderer;
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.EntityFX;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.entity.Entity;
+import net.minecraft.util.EnumFacing;
import net.minecraft.world.ChunkCoordIntPair;
+import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.gen.ChunkProviderServer;
@@ -629,6 +633,15 @@ public class LODRenderer {
return null;
}
+ public boolean shouldSideBeRendered(Block block, IBlockAccess ba, int x, int y, int z, int w) {
+ EnumFacing facing = EnumFacing.values()[w];
+ if(block.getMaterial() == Material.water && facing != EnumFacing.UP && facing != EnumFacing.DOWN && !Minecraft.getMinecraft().theWorld.getChunkFromBlockCoords(x, z).isChunkLoaded) {
+ return false;
+ } else {
+ return block.shouldSideBeRendered(ba, x, y, z, w);
+ }
+ }
+
public List<String> getDebugText() {
return Arrays.asList(
"VRAM: " + (nextMeshOffset / 1024 / 1024) + "MB / " + (BUFFER_SIZE / 1024 / 1024) + "MB",