Skip to content

Commit 09c7b05

Browse files
authored
fix(voxel-renderer): make sure to remove chunk before rebuilding it (#264)
1 parent 4d22d1a commit 09c7b05

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

.changeset/public-bananas-add.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@jolly-pixel/voxel.renderer": patch
3+
---
4+
5+
Remove chunk before rebuilding it

packages/voxel-renderer/src/VoxelRenderer.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -782,6 +782,11 @@ export class VoxelRenderer extends ActorComponent {
782782
`Rebuilding chunk '${chunkKeyBase}' with layer name '${layer.name}'`
783783
);
784784

785+
// Remove any existing meshes for this chunk before adding new ones.
786+
// This prevents orphaned Three.js objects when a chunk is rebuilt multiple
787+
// times (e.g. load() followed by awake()).
788+
this.#removeChunk(layer, chunk);
789+
785790
const geometries = this.#meshBuilder.buildChunkGeometries(chunk, layer);
786791
if (!geometries) {
787792
return;

0 commit comments

Comments
 (0)