The licensee found a way to lock the state of a rigidbody as PBDRigid->ObjectState() == EObjectStateType::Sleeping by subjecting it to a particular transient field composed of a RadialFalloff and a RadialVector. The transient field is set as Physics Type> Linear Force. Once the rigidbody sleeps under it's area of influence, it never wakes up, even if the field is moved away from the rigidbody. Please check the repro project.
I didn't hit this while debugging but found this comment on PBDRigidsSOAs.h about setting sleep in two places:
void DeactivateParticle(...)
...
// Sleeping state is currently expressed in 2 places...
PBDRigid->SetSleeping(true);
PBDRigid->SetObjectStateLowLevel(EObjectStateType::Sleeping);
The comment suggests this might be an issue.
To reproduce the problem:
Use the repro project
'Simulate' the scene
Move the Red Wireframe Sphere called BP_FieldSystemActorRadial over onto one of the two spheres in the center
Doing so will change the sphere's color to orange, indicating it's awake
Now move BP_FieldSystemActorBase over one of the two spheres
Nothing should happen -
Then move BP_FieldSystemActorBase somewhere away from the sphere, and move BP_FieldSystemActorRadial (the red wireframe sphere) onto the sphere instead
In this case, the sphere's color should remain white, indicating that it's still asleep
Opening up either BP_FieldSystemActorRadial & BP_FieldSystemActorBase will show you how the Transient Fields are set up
Call stack for the behavior, non-fatal:
> UnrealEditor-FieldSystemEngine.dll!UFieldSystemComponent::DispatchFieldCommand(const FFieldSystemCommand & InCommand, const bool IsTransient) Line 150 C++
UnrealEditor-FieldSystemEngine.dll!UFieldSystemComponent::BuildFieldCommand(bool Enabled, EFieldPhysicsType Target, UFieldSystemMetaData * MetaData, UFieldNodeBase * Field, const bool IsTransient) Line 285 C++
[Inline Frame] UnrealEditor-FieldSystemEngine.dll!UFieldSystemComponent::ApplyPhysicsField(bool Target, EFieldPhysicsType) Line 387 C++
UnrealEditor-FieldSystemEngine.dll!UFieldSystemComponent::execApplyPhysicsField(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 337 C++
UnrealEditor-CoreUObject.dll!UFunction::Invoke(UObject * Obj, FFrame & Stack, void * const Z_Param__Result) Line 6847 C++
UnrealEditor-CoreUObject.dll!UObject::CallFunction(FFrame & Stack, void * const Z_Param__Result, UFunction * Function) Line 1139 C++
[Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 478 C++
UnrealEditor-CoreUObject.dll!UObject::ProcessContextOpcode(FFrame & Stack, void * const Z_Param__Result, bool bCanFailSilently) Line 3086 C++
[Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 478 C++
UnrealEditor-CoreUObject.dll!ProcessLocalScriptFunction(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 1206 C++
UnrealEditor-CoreUObject.dll!ProcessScriptFunction<void ({}cdecl*)(UObject *,FFrame &,void *)>(UObject * Context, UFunction * Function, FFrame & Stack, void * const Z_Param{_}_Result, void[Image Removed](UObject *, FFrame &, void *) ExecFtor) Line 1039 C++
UnrealEditor-CoreUObject.dll!ProcessLocalFunction(UObject * Context, UFunction * Fn, FFrame & Stack, void * const Z_Param__Result) Line 1276 C++
[Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 478 C++
UnrealEditor-CoreUObject.dll!ProcessLocalScriptFunction(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 1206 C++
UnrealEditor-CoreUObject.dll!UObject::ProcessInternal(UObject * Context, FFrame & Stack, void * const Z_Param__Result)
I am not able to find world outliner how to enable it?
How can i modify the param name in EQS node
Undefined sysmbol: typeinfo for AActor when cross-compile linux dedicated server on windows
When I open UE4 4.24.3 it appears that. Does anyone know how to solve?
Delay nodes occasionally don't fire the "Completed" output in a nativized build
How does UMG set overlapping layouts?
What method is used to fill polygonal regions when drawing spline mesh at run time?
How to achieve HLSL Multiple Render Target in Material blueprints?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-223571 in the post.
0 |
Component | UE - Simulation - Physics |
---|---|
Affects Versions | 5.4.3 |
Created | Sep 5, 2024 |
---|---|
Updated | Sep 11, 2024 |