void UPrimitiveComponent::WarnInvalidPhysicsOperations_Internal(const FText& ActionText, const FBodyInstance* BI) const { #if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) if (!CheckStaticMobilityAndWarn(ActionText)) //all physics operations require non-static mobility { if (BI && BI->bSimulatePhysics == false) //some require to be simulating too { FMessageLog("PIE").Warning(FText::Format(LOCTEXT("InvalidPhysicsOperation", "{0} has to have 'Simulate Physics' enabled if you'd like to {1}. "), FText::FromString(GetReadableName()), ActionText)); } } #endif }
void UPrimitiveComponent::WarnInvalidPhysicsOperations_Internal(const FText& ActionText, const FBodyInstance* BI) const { #if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) if (!CheckStaticMobilityAndWarn(ActionText)) //all physics operations require non-static mobility { if (BI) { ECollisionEnabled::Type CollisionEnabled = BI->GetCollisionEnabled(); if(BI->bSimulatePhysics == false) //some require to be simulating too { FMessageLog("PIE").Warning(FText::Format(LOCTEXT("InvalidPhysicsOperation", "{0} has to have 'Simulate Physics' enabled if you'd like to {1}. "), FText::FromString(GetReadableName()), ActionText)); } else if (CollisionEnabled == ECollisionEnabled::NoCollision || CollisionEnabled == ECollisionEnabled::QueryOnly) //shapes need to be simulating { FMessageLog("PIE").Warning(FText::Format(LOCTEXT("InvalidPhysicsOperation", "{0} has to have 'CollisionEnabled' set to 'Query and Physics' or 'Physics only' if you'd like to {1}. "), FText::FromString(GetReadableName()), ActionText)); } } } #endif }