From 2495c38dc238a73f4f525d42a48dadde50eeef95 Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sat, 20 Sep 2025 15:23:34 -0500 Subject: [PATCH] Merge branch 'merge-bedrock' --- .../render/bufferBuilding/LodQuadBuilder.java | 21 ------------------- .../transformers/LodDataBuilder.java | 6 ++++++ 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java index b068086f1..199910604 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java @@ -173,19 +173,6 @@ public class LodQuadBuilder BufferQuad quad = new BufferQuad(minX, maxY, minZ, widthEastWest, widthNorthSouthOrUpDown, color, irisBlockMaterialId, skylight, blocklight, EDhDirection.UP); boolean isTransparent = (this.doTransparency && ColorUtil.getAlpha(color) < 255); ArrayList quadList = isTransparent ? this.transparentQuads[EDhDirection.UP.ordinal()] : this.opaqueQuads[EDhDirection.UP.ordinal()]; - - - // attempt to merge this quad with adjacent ones - if (!quadList.isEmpty() && - ( - quadList.get(quadList.size() - 1).tryMerge(quad, BufferMergeDirectionEnum.EastWest) - || quadList.get(quadList.size() - 1).tryMerge(quad, BufferMergeDirectionEnum.NorthSouthOrUpDown)) - ) - { - this.premergeCount++; - return; - } - quadList.add(quad); } @@ -194,14 +181,6 @@ public class LodQuadBuilder BufferQuad quad = new BufferQuad(x, y, z, width, wz, color, irisBlockMaterialId, skylight, blocklight, EDhDirection.DOWN); ArrayList qs = (doTransparency && ColorUtil.getAlpha(color) < 255) ? transparentQuads[EDhDirection.DOWN.ordinal()] : opaqueQuads[EDhDirection.DOWN.ordinal()]; - if (!qs.isEmpty() - && (qs.get(qs.size() - 1).tryMerge(quad, BufferMergeDirectionEnum.EastWest) - || qs.get(qs.size() - 1).tryMerge(quad, BufferMergeDirectionEnum.NorthSouthOrUpDown)) - ) - { - premergeCount++; - return; - } qs.add(quad); } diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/LodDataBuilder.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/LodDataBuilder.java index 3088a32fc..185c13326 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/LodDataBuilder.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/LodDataBuilder.java @@ -285,6 +285,12 @@ public class LodDataBuilder continue; } + // the lowest/bedrock segment should not be culled + if (centerIndex + 1 == centerColumn.size()) + { + continue; + } + posXIndex = checkOcclusion(dataSource, currentPoint, posXColumn, posXIndex); if (posXIndex < 0) {