From 61502c32a661b8e73342de66b089c5140461fb5c Mon Sep 17 00:00:00 2001 From: Morippi Date: Fri, 10 Dec 2021 19:18:22 +0100 Subject: [PATCH] fixewd generation not working --- .../seibel/lod/core/builders/lodBuilding/LodBuilder.java | 6 ++---- .../lod/core/wrapperInterfaces/chunk/IChunkWrapper.java | 1 + 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/seibel/lod/core/builders/lodBuilding/LodBuilder.java b/src/main/java/com/seibel/lod/core/builders/lodBuilding/LodBuilder.java index 369bc3e9d..024e81715 100644 --- a/src/main/java/com/seibel/lod/core/builders/lodBuilding/LodBuilder.java +++ b/src/main/java/com/seibel/lod/core/builders/lodBuilding/LodBuilder.java @@ -215,9 +215,6 @@ import com.seibel.lod.core.wrapperInterfaces.world.IWorldWrapper; long[] dataToMerge = ThreadMapUtil.getBuilderVerticalArray(detail.detailLevel); int verticalData = DataPointUtil.WORLD_HEIGHT / 2 + 1; - - int chunkPosX = chunk.getChunkPosX(); - int chunkPosZ = chunk.getChunkPosZ(); int height; int depth; int color; @@ -244,7 +241,7 @@ import com.seibel.lod.core.wrapperInterfaces.world.IWorldWrapper; zAbs = chunk.getMinZ() + zRel; //Calculate the height of the lod - yAbs = DataPointUtil.WORLD_HEIGHT - DataPointUtil.VERTICAL_OFFSET + 1; + yAbs = chunk.getMaxY(xRel, zRel); //DataPointUtil.WORLD_HEIGHT - DataPointUtil.VERTICAL_OFFSET + 1; int count = 0; boolean topBlock = true; while (yAbs > 0) @@ -308,6 +305,7 @@ import com.seibel.lod.core.wrapperInterfaces.world.IWorldWrapper; /** Find the highest valid point from the Top */ private short determineHeightPointFrom(IChunkWrapper chunk, LodBuilderConfig config, int xAbs, int yAbs, int zAbs) { + short height = DEFAULT_HEIGHT; if (config.useHeightmap) height = (short) chunk.getHeightMapValue(xAbs, zAbs); diff --git a/src/main/java/com/seibel/lod/core/wrapperInterfaces/chunk/IChunkWrapper.java b/src/main/java/com/seibel/lod/core/wrapperInterfaces/chunk/IChunkWrapper.java index 3eb424d3e..5e678097d 100644 --- a/src/main/java/com/seibel/lod/core/wrapperInterfaces/chunk/IChunkWrapper.java +++ b/src/main/java/com/seibel/lod/core/wrapperInterfaces/chunk/IChunkWrapper.java @@ -46,6 +46,7 @@ public interface IChunkWrapper int getChunkPosZ(); int getRegionPosX(); int getRegionPosZ(); + int getMaxY(int x, int z); int getMaxX(); int getMaxZ(); int getMinX();