diff --git a/libraries/entities-renderer/src/EntityTreeRenderer.cpp b/libraries/entities-renderer/src/EntityTreeRenderer.cpp index 5b258db46b..ffaac3bf3e 100644 --- a/libraries/entities-renderer/src/EntityTreeRenderer.cpp +++ b/libraries/entities-renderer/src/EntityTreeRenderer.cpp @@ -246,8 +246,13 @@ bool EntityTreeRenderer::findBestZoneAndMaybeContainingEntities(QVectorgetVisible()) { - auto zone = std::dynamic_pointer_cast(entity); - _layeredZones.insert(zone); + auto renderID = std::dynamic_pointer_cast(entity)->getRenderItemID(); + bool isValidRenderID = (renderID != render::Item::INVALID_ITEM_ID); + + if (isValidRenderID) { + auto zone = std::dynamic_pointer_cast(entity); + _layeredZones.insert(zone); + } } } } @@ -354,6 +359,7 @@ bool EntityTreeRenderer::applyLayeredZones() { for (auto& zone : _layeredZones) { auto id = std::dynamic_pointer_cast(zone.zone)->getRenderItemID(); + Q_ASSERT(id != render::Item::INVALID_ITEM_ID); list.push_back(id); } render::Selection selection("RankedZones", list);