From b81fd46929367aa1b6bd460632c42fa1097c45b4 Mon Sep 17 00:00:00 2001 From: mcrcortex <18544518+MCRcortex@users.noreply.github.com> Date: Thu, 8 Aug 2024 02:05:23 +1000 Subject: [PATCH] Another flag --- .../voxy/client/core/rendering/building/BuiltSection.java | 3 ++- .../voxy/client/core/rendering/building/QuadEncoder.java | 2 ++ src/main/java/me/cortex/voxy/client/core/util/Mesher2D.java | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/building/BuiltSection.java b/src/main/java/me/cortex/voxy/client/core/rendering/building/BuiltSection.java index 79b3cb05..10001cb0 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/building/BuiltSection.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/building/BuiltSection.java @@ -6,6 +6,7 @@ import java.util.Arrays; //TODO: also have an AABB size stored public final class BuiltSection { + public static final boolean VERIFY_BUILT_SECTION_OFFSETS = System.getProperty("voxy.verifyBuiltSectionOffsets", "true").equals("true"); public final long position; public final int aabb; public final MemoryBuffer geometryBuffer; @@ -20,7 +21,7 @@ public final class BuiltSection { this.aabb = aabb; this.geometryBuffer = geometryBuffer; this.offsets = offsets; - if (offsets != null) { + if (offsets != null && VERIFY_BUILT_SECTION_OFFSETS) { for (int i = 0; i < offsets.length-1; i++) { int delta = offsets[i+1] - offsets[i]; if (delta<0||delta>=(1<<16)) { diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/building/QuadEncoder.java b/src/main/java/me/cortex/voxy/client/core/rendering/building/QuadEncoder.java index 379bfd14..a73c23a5 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/building/QuadEncoder.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/building/QuadEncoder.java @@ -27,9 +27,11 @@ public class QuadEncoder { //Note: the encodedMeshedData is from the Mesher2D public static int encodePosition(int face, int otherAxis, int encodedMeshedData) { + /* if (false&&(Mesher2D.getW(encodedMeshedData) > 16 || Mesher2D.getH(encodedMeshedData) > 16)) { throw new IllegalStateException("Width or height > 16"); } + */ int dat = face; dat |= ((Mesher2D.getW(encodedMeshedData) - 1) << 7) | ((Mesher2D.getH(encodedMeshedData) - 1) << 3); diff --git a/src/main/java/me/cortex/voxy/client/core/util/Mesher2D.java b/src/main/java/me/cortex/voxy/client/core/util/Mesher2D.java index e2472348..477c0025 100644 --- a/src/main/java/me/cortex/voxy/client/core/util/Mesher2D.java +++ b/src/main/java/me/cortex/voxy/client/core/util/Mesher2D.java @@ -28,9 +28,10 @@ public final class Mesher2D { private int getIdx(int x, int z) { int M = (1<M || z>M)) { throw new IllegalStateException(); - } + }*/ return ((z&M)<