diff --git a/src/main/java/ca/blarg/gdx/tilemap3d/TileMap.java b/src/main/java/ca/blarg/gdx/tilemap3d/TileMap.java index 9256bd1..6f49f13 100644 --- a/src/main/java/ca/blarg/gdx/tilemap3d/TileMap.java +++ b/src/main/java/ca/blarg/gdx/tilemap3d/TileMap.java @@ -167,8 +167,8 @@ public class TileMap extends TileContainer implements Disposable { if (!isUpdating()) return true; // done updating (or we were never updating in the first place ...) - TileChunk chunkNeedingVboCreation = updater.chunkNeedingVboCreation; - if (chunkNeedingVboCreation != null) { + if (updater.isWaitingForVboCreation()) { + TileChunk chunkNeedingVboCreation = updater.chunkNeedingVboCreation; ChunkVertexGenerator.GeneratedChunkMeshes meshes = vertexGenerator.createMeshFromVertices(); chunkNeedingVboCreation.setMeshes(meshes); updater.signalDoneVboCreation(); diff --git a/src/main/java/ca/blarg/gdx/tilemap3d/TileMapUpdater.java b/src/main/java/ca/blarg/gdx/tilemap3d/TileMapUpdater.java index c6ec474..a81df64 100644 --- a/src/main/java/ca/blarg/gdx/tilemap3d/TileMapUpdater.java +++ b/src/main/java/ca/blarg/gdx/tilemap3d/TileMapUpdater.java @@ -24,6 +24,10 @@ public class TileMapUpdater implements Runnable { return chunkNeedingVboCreation; } + public boolean isWaitingForVboCreation() { + return waitingForVboCreation; + } + public synchronized void signalDoneVboCreation() { waitingForVboCreation = false; }