From 70dd0bda729dd37af5d90b31ff2c69160cfbaf05 Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sat, 21 Mar 2026 16:13:30 -0500 Subject: [PATCH] fix blaze3D memory leak --- .../blaze/wrappers/buffer/BlazeVertexBufferWrapper.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/src/main/java/com/seibel/distanthorizons/common/render/blaze/wrappers/buffer/BlazeVertexBufferWrapper.java b/common/src/main/java/com/seibel/distanthorizons/common/render/blaze/wrappers/buffer/BlazeVertexBufferWrapper.java index 126a0e82c..f98f975db 100644 --- a/common/src/main/java/com/seibel/distanthorizons/common/render/blaze/wrappers/buffer/BlazeVertexBufferWrapper.java +++ b/common/src/main/java/com/seibel/distanthorizons/common/render/blaze/wrappers/buffer/BlazeVertexBufferWrapper.java @@ -16,6 +16,7 @@ import com.seibel.distanthorizons.core.dependencyInjection.SingletonInjector; import com.seibel.distanthorizons.core.render.RenderThreadTaskHandler; import com.seibel.distanthorizons.core.wrapperInterfaces.render.AbstractDhRenderApiDefinition; import com.seibel.distanthorizons.core.wrapperInterfaces.render.objects.IVertexBufferWrapper; +import org.lwjgl.system.MemoryUtil; import java.nio.ByteBuffer; @@ -76,6 +77,8 @@ public class BlazeVertexBufferWrapper implements IVertexBufferWrapper GpuBufferSlice bufferSlice = new GpuBufferSlice(GLOBAL_INDEX_GPU_BUFFER, /*offset*/ 0, indexBuffer.capacity()); COMMAND_ENCODER.writeToBuffer(bufferSlice, indexBuffer); + MemoryUtil.memFree(indexBuffer); + }); } } @@ -156,6 +159,9 @@ public class BlazeVertexBufferWrapper implements IVertexBufferWrapper GpuBufferSlice bufferSlice = new GpuBufferSlice(this.indexGpuBuffer, /*offset*/ 0, indexBuffer.capacity()); COMMAND_ENCODER.writeToBuffer(bufferSlice, indexBuffer); + + MemoryUtil.memFree(indexBuffer); + } } private static String getIndexBufferName() { return "distantHorizons:LodIndexBuffer"; }