This is a regression. Tested in //UE5/Release-5.1 CL23901901
When a geometry collection is destroyed by an On Hit event the editor becomes unresponsive and never recovers. No crash is generated.
Expected Results:
The Geometry Collection is destroyed.
Actual Results:
The editor becomes unresponsive.
[External Code] > [Inline Frame] UnrealEditor-Chaos.dll!Windows::AcquireSRWLockExclusive(Windows::SRWLOCK *) Line 155 C++ [Inline Frame] UnrealEditor-Chaos.dll!FWindowsRWLock::WriteLock() Line 132 C++ UnrealEditor-Chaos.dll!Chaos::FEventManager::UnregisterHandler(const Chaos::EEventType & EventType, const void * InHandler) Line 35 C++ UnrealEditor-ChaosSolverEngine.dll!UChaosGameplayEventDispatcher::UnregisterChaosEvents() Line 321 C++ UnrealEditor-ChaosSolverEngine.dll!UChaosGameplayEventDispatcher::OnUnregister() Line 50 C++ UnrealEditor-Engine.dll!UActorComponent::ExecuteUnregisterEvents() Line 1707 C++ UnrealEditor-Engine.dll!UActorComponent::UnregisterComponent() Line 1423 C++ UnrealEditor-Engine.dll!AActor::UnregisterAllComponents(bool bForReregister) Line 5166 C++ UnrealEditor-Engine.dll!UWorld::DestroyActor(AActor * ThisActor, bool bNetForce, bool bShouldModifyLevel) Line 995 C++ UnrealEditor-Engine.dll!AActor::Destroy(bool bNetForce, bool bShouldModifyLevel) Line 4595 C++ UnrealEditor-CoreUObject.dll!UFunction::Invoke(UObject * Obj, FFrame & Stack, void * const Z_Param__Result) Line 6455 C++ UnrealEditor-CoreUObject.dll!UObject::CallFunction(FFrame & Stack, void * const Z_Param__Result, UFunction * Function) Line 1129 C++ [Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 467 C++ UnrealEditor-CoreUObject.dll!UObject::ProcessContextOpcode(FFrame & Stack, void * const Z_Param__Result, bool bCanFailSilently) Line 3139 C++ [Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 467 C++ UnrealEditor-CoreUObject.dll!ProcessLocalScriptFunction(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 1199 C++ UnrealEditor-CoreUObject.dll!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>(UObject * Context, UFunction * Function, FFrame & Stack, void * const Z_Param__Result, void(*)(UObject *, FFrame &, void *) ExecFtor) Line 1029 C++ UnrealEditor-CoreUObject.dll!ProcessLocalFunction(UObject * Context, UFunction * Fn, FFrame & Stack, void * const Z_Param__Result) Line 1269 C++ [Inline Frame] UnrealEditor-CoreUObject.dll!FFrame::Step(UObject *) Line 467 C++ UnrealEditor-CoreUObject.dll!ProcessLocalScriptFunction(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 1199 C++ UnrealEditor-CoreUObject.dll!UObject::ProcessInternal(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 1296 C++ UnrealEditor-CoreUObject.dll!UFunction::Invoke(UObject * Obj, FFrame & Stack, void * const Z_Param__Result) Line 6455 C++ UnrealEditor-CoreUObject.dll!UObject::ProcessEvent(UFunction * Function, void * Parms) Line 2127 C++ UnrealEditor-Engine.dll!AActor::ProcessEvent(UFunction * Function, void * Parameters) Line 1055 C++ [Inline Frame] UnrealEditor-Engine.dll!TScriptDelegate<FWeakObjectPtr>::ProcessDelegate(void *) Line 247 C++ UnrealEditor-Engine.dll!TMulticastScriptDelegate<FWeakObjectPtr>::ProcessMulticastDelegate<UObject>(void * Parameters) Line 493 C++ [Inline Frame] UnrealEditor-Engine.dll!FActorHitSignature_DelegateWrapper(const TMulticastScriptDelegate<FWeakObjectPtr> &) Line 95 C++ [Inline Frame] UnrealEditor-Engine.dll!FActorHitSignature_MCSignature::Broadcast(AActor *) Line 95 C++ UnrealEditor-Engine.dll!TSparseDynamicDelegate<FActorHitSignature_MCSignature,AActor,FActorHitSignatureInfoGetter>::Broadcast<AActor *,AActor *,UE::Math::TVector<double>,FHitResult>(AActor * <Params_0>, AActor * <Params_1>, UE::Math::TVector<double> <Params_2>, FHitResult <Params_3>) Line 341 C++ UnrealEditor-Engine.dll!AActor::DispatchPhysicsCollisionHit(const FRigidBodyCollisionInfo & MyInfo, const FRigidBodyCollisionInfo & OtherInfo, const FCollisionImpactData & RigidCollisionData) Line 4952 C++ UnrealEditor-Engine.dll!FPhysScene_Chaos::DispatchPendingCollisionNotifies() Line 870 C++ UnrealEditor-Chaos.dll!Chaos::TEventContainer<Chaos::FCollisionEventData>::DispatchConsumerData() Line 215 C++ UnrealEditor-Chaos.dll!Chaos::FEventManager::DispatchEvents() Line 89 C++ UnrealEditor-PhysicsCore.dll!<lambda_55c6963273175a8635f056d36be1f746>::operator()<Chaos::FPBDRigidsSolver>(Chaos::FPBDRigidsSolver & Concrete) Line 524 C++ [Inline Frame] UnrealEditor-PhysicsCore.dll!Chaos::FPhysicsSolverBase::CastHelper(const FChaosScene::EndFrame::__l65::<lambda_55c6963273175a8635f056d36be1f746> &) Line 222 C++ UnrealEditor-PhysicsCore.dll!FChaosScene::EndFrame() Line 516 C++ [Inline Frame] UnrealEditor-Engine.dll!Invoke(void(UWorld::*)()) Line 66 C++ [Inline Frame] UnrealEditor-Engine.dll!UE::Core::Private::Tuple::TTupleBase<TIntegerSequence<unsigned int>>::ApplyAfter(void(UWorld::*)() &) Line 327 C++ UnrealEditor-Engine.dll!TBaseUObjectMethodDelegateInstance<0,UWorld,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() Line 618 C++ [Inline Frame] UnrealEditor-Engine.dll!TDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfBound() Line 639 C++ [Inline Frame] UnrealEditor-Engine.dll!FSimpleDelegateGraphTask::DoTask(ENamedThreads::Type) Line 1678 C++ UnrealEditor-Engine.dll!TGraphTask<FSimpleDelegateGraphTask>::ExecuteTask(TArray<FBaseGraphTask *,TSizedDefaultAllocator<32>> & NewTasks, ENamedThreads::Type CurrentThread, bool bDeleteOnCompletion) Line 1348 C++ [Inline Frame] UnrealEditor-Core.dll!FBaseGraphTask::Execute(TArray<FBaseGraphTask *,TSizedDefaultAllocator<32>> & CurrentThread, ENamedThreads::Type) Line 950 C++ UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread(int QueueIndex, bool bAllowStall) Line 760 C++ UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit(int QueueIndex) Line 649 C++ [Inline Frame] UnrealEditor-Core.dll!FTaskGraphCompatibilityImplementation::ProcessThreadUntilRequestReturn(ENamedThreads::Type CurrentThread) Line 2149 C++ UnrealEditor-Core.dll!FTaskGraphCompatibilityImplementation::WaitUntilTasksComplete(const TArray<TRefCountPtr<FGraphEvent>,TSizedInlineAllocator<4,32,TSizedDefaultAllocator<32>>> & Tasks, ENamedThreads::Type CurrentThreadIfKnown) Line 2203 C++ UnrealEditor-Engine.dll!FTickTaskSequencer::ReleaseTickGroup(ETickingGroup WorldTickGroup, bool bBlockTillComplete) Line 565 C++ UnrealEditor-Engine.dll!FTickTaskManager::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 1592 C++ UnrealEditor-Engine.dll!UWorld::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 794 C++ UnrealEditor-Engine.dll!UWorld::Tick(ELevelTick TickType, float DeltaSeconds) Line 1559 C++ UnrealEditor-UnrealEd.dll!UEditorEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 1890 C++ UnrealEditor-UnrealEd.dll!UUnrealEdEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 517 C++ UnrealEditor.exe!FEngineLoop::Tick() Line 5369 C++ [Inline Frame] UnrealEditor.exe!EngineTick() Line 66 C++ UnrealEditor.exe!GuardedMain(const wchar_t * CmdLine) Line 202 C++ UnrealEditor.exe!LaunchWindowsStartup(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow, const wchar_t * CmdLine) Line 233 C++ UnrealEditor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * pCmdLine, int nCmdShow) Line 282 C++ [External Code]
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-183725 in the post.
4 |
Component | UE - Simulation - Physics - Destruction |
---|---|
Affects Versions | 5.2 |
Target Fix | 5.6 |
Created | Apr 19, 2023 |
---|---|
Updated | Nov 1, 2024 |