Improve geometry disposal when clearing terrain meshes

This commit is contained in:
2026-04-29 23:15:19 +02:00
parent d2b920dbf5
commit 0f015bb99a

View File

@@ -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<BufferGeometry>();
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();
}