From 2bc3d6fd03bcc38cc9583ee0774367916772e0c5 Mon Sep 17 00:00:00 2001 From: MayaTheShy Date: Sat, 8 Nov 2025 16:00:27 -0500 Subject: [PATCH] feat: enhance SceneSync update method to process entity deletions after updates --- src/SceneSync.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/SceneSync.cpp b/src/SceneSync.cpp index 3748ca5..b3361d4 100644 --- a/src/SceneSync.cpp +++ b/src/SceneSync.cpp @@ -21,5 +21,15 @@ void SceneSync::update(StardustBridge& stardust, OverteClient& overte) { stardust.updateNodeTransform(it->second, e.transform); } } + + // Process deletions after updates to avoid create-then-delete thrash. + auto deleted = overte.consumeDeletedEntities(); + for (auto entId : deleted) { + auto it = s_entityNodeMap.find(entId); + if (it != s_entityNodeMap.end()) { + stardust.removeNode(it->second); + s_entityNodeMap.erase(it); + } + } }