diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/QuadTree/LodQuadTree.java b/core/src/main/java/com/seibel/distanthorizons/core/render/QuadTree/LodQuadTree.java index 33a7a3ff2..f7ac0be90 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/QuadTree/LodQuadTree.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/QuadTree/LodQuadTree.java @@ -185,7 +185,13 @@ public class LodQuadTree extends QuadTree implements IDebugRen this.enabledRenderSectionLock.lock(); tempProcessNodeList.clear(); - tempProcessNodeList.addAll(this.enabledSections); + + // manual add and loop to reduce GC pressure due to addAll() doing unnecessary + // array copies + for (int i = 0; i < this.enabledSections.size(); i++) + { + tempProcessNodeList.add(this.enabledSections.get(i)); + } } finally {