diff --git a/Engine/Source/Editor/UILayers/Inspector.cpp b/Engine/Source/Editor/UILayers/Inspector.cpp index d1f85675..6ef88185 100644 --- a/Engine/Source/Editor/UILayers/Inspector.cpp +++ b/Engine/Source/Editor/UILayers/Inspector.cpp @@ -576,6 +576,10 @@ void Inspector::Update() engine::SceneWorld* pSceneWorld = GetSceneWorld(); if (engine::Entity selectedEntity = pSceneWorld->GetSelectedEntity(); selectedEntity != engine::INVALID_ENTITY) { + // Entity will be invalid in two cases : 1.Select nothing 2.The selected entity has been deleted + // Here we only want to capture the case 1 not to clear Inspector properties. + // For case 2, it still uses a valid entity to update but nothing updated. + // It is OK if we don't reuse the entity id intermediately. m_lastSelectedEntity = selectedEntity; } @@ -595,9 +599,9 @@ void Inspector::Update() details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); + details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); - details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); details::UpdateComponentWidget(pSceneWorld, m_lastSelectedEntity); #ifdef ENABLE_DDGI diff --git a/Engine/Source/ThirdParty/AssetPipeline b/Engine/Source/ThirdParty/AssetPipeline index 1e4b58f9..88373377 160000 --- a/Engine/Source/ThirdParty/AssetPipeline +++ b/Engine/Source/ThirdParty/AssetPipeline @@ -1 +1 @@ -Subproject commit 1e4b58f964f8adeff84038fb4f3be89eb26e6514 +Subproject commit 883733779ad37219e7b246710c33c26fc5d4d71c