diff --git a/Gems/PhysX/Code/Source/EditorColliderComponent.cpp b/Gems/PhysX/Code/Source/EditorColliderComponent.cpp index 2785ab19e1..2cf5835a1f 100644 --- a/Gems/PhysX/Code/Source/EditorColliderComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorColliderComponent.cpp @@ -1057,7 +1057,14 @@ namespace PhysX bool EditorColliderComponent::IsPhysicsEnabled() const { - return m_editorBodyHandle != AzPhysics::InvalidSimulatedBodyHandle; + if (m_sceneInterface && m_editorBodyHandle != AzPhysics::InvalidSimulatedBodyHandle) + { + if (auto* body = m_sceneInterface->GetSimulatedBodyFromHandle(m_editorSceneHandle, m_editorBodyHandle)) + { + return body->m_simulating; + } + } + return false; } AZ::Aabb EditorColliderComponent::GetAabb() const diff --git a/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp b/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp index 2c86a18301..b71bd47288 100644 --- a/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp @@ -752,7 +752,14 @@ namespace PhysX bool EditorShapeColliderComponent::IsPhysicsEnabled() const { - return m_editorBodyHandle != AzPhysics::InvalidSimulatedBodyHandle; + if (m_sceneInterface && m_editorBodyHandle != AzPhysics::InvalidSimulatedBodyHandle) + { + if (auto* body = m_sceneInterface->GetSimulatedBodyFromHandle(m_editorSceneHandle, m_editorBodyHandle)) + { + return body->m_simulating; + } + } + return false; } AZ::Aabb EditorShapeColliderComponent::GetAabb() const