From 0f015bb99a5947643c7667db700d204b98eedf35 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Wed, 29 Apr 2026 23:15:19 +0200 Subject: [PATCH] Improve geometry disposal when clearing terrain meshes --- src/runtime-three/runtime-host.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/runtime-three/runtime-host.ts b/src/runtime-three/runtime-host.ts index aed96266..0f0cbeb6 100644 --- a/src/runtime-three/runtime-host.ts +++ b/src/runtime-three/runtime-host.ts @@ -4935,13 +4935,18 @@ export class RuntimeHost { private clearTerrainMeshes() { for (const renderObjects of this.terrainMeshes.values()) { this.terrainGroup.remove(renderObjects.group); + const geometries = new Set(); for (const chunk of renderObjects.chunks) { - for (const mesh of chunk.levels) { - mesh.geometry.dispose(); + for (const geometry of chunk.levelGeometries) { + geometries.add(geometry); } } + for (const geometry of geometries) { + geometry.dispose(); + } + renderObjects.material.dispose(); }