From 92d6f9502b0aec45fa3806d821d558bbe0a58d71 Mon Sep 17 00:00:00 2001 From: makamys Date: Sun, 19 Jun 2022 23:55:15 +0200 Subject: Fix 2nd pass of quad merging not working Reduces quad count from 792 KQ to 781 KQ on the complex savanna scene. That's not a huge difference... --- src/main/java/makamys/neodymium/renderer/ChunkMesh.java | 4 ++++ src/main/java/makamys/neodymium/renderer/MeshQuad.java | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'src/main/java') diff --git a/src/main/java/makamys/neodymium/renderer/ChunkMesh.java b/src/main/java/makamys/neodymium/renderer/ChunkMesh.java index de14867..f8ed840 100644 --- a/src/main/java/makamys/neodymium/renderer/ChunkMesh.java +++ b/src/main/java/makamys/neodymium/renderer/ChunkMesh.java @@ -229,6 +229,10 @@ public class ChunkMesh extends Mesh { } } + for(int i = 0; i < planeQuads.size(); i++) { + planeQuads.get(i).mergeReference = null; + } + // Pass 2: merge rows to create rectangles // TODO optimize? for(int i = 0; i < planeQuads.size(); i++) { diff --git a/src/main/java/makamys/neodymium/renderer/MeshQuad.java b/src/main/java/makamys/neodymium/renderer/MeshQuad.java index 45ea73b..bddabe7 100644 --- a/src/main/java/makamys/neodymium/renderer/MeshQuad.java +++ b/src/main/java/makamys/neodymium/renderer/MeshQuad.java @@ -61,7 +61,7 @@ public class MeshQuad { private int[] quadCountByDirection = {1, 1}; public static int[] totalMergeCountByPlane = new int[3]; - private MeshQuad mergeReference; + public MeshQuad mergeReference; private int minPositive(int a, int b) { if(a == -1) { -- cgit