Description

Implementing an EventHit node in a Geometry Collection Actor and printing the Names of the returned values, it wrongly returns the reference to this Actor (self) on the Other actor object reference, as well as the Geometry Collection Component of this Actor on the Other Comp Primitive Component Object Reference.

Example: BP1 is a BP that inherits from Geometry Collection Actor and is marked Static; during simulation BP1 is hit by BP2 (also Geometry Collection Actor) that is marked Dynamic and was originally set above it.
In EventHit of BP1, Other will return BP1 instead of BP2.

The licensee mentions that the issue lies in ChaosGameplayEventDispatcher.cpp, whenever (line 423) bSwapOrder is true, 

UPrimitiveComponent* const Comp1 = Scene.GetOwningComponent<UPrimitiveComponent>(PhysicsProxy1); 

should be 

UPrimitiveComponent* const Comp1 = Scene.GetOwningComponent<UPrimitiveComponent>(PhysicsProxy0);
Steps to Reproduce

Open up ReproMap3 attached to the case. Verify the logs:
LogBlueprintUserMessages: [GC_Cube2_Blueprint1_C_1] GC_Cube2_Blueprint1.GeometryCollectionComponent0 hit GC_Cube2_Blueprint1.GeometryCollectionComponent0

Should be GC_Cube2_Blueprint2.GeometryCollectionComponent0 hit GC_Cube2_Blueprint1.GeometryCollectionComponent0

Callstack

Call Stack for context, non-fatal:
> UnrealEditor-ChaosSolverEngine.dll!UChaosGameplayEventDispatcher::HandleCollisionEvents(const Chaos::FCollisionEventData & Event) Line 379 C++
UnrealEditor-Chaos.dll!Chaos::TEventContainer<Chaos::FCollisionEventData>::DispatchConsumerData() Line 338 C++
UnrealEditor-Chaos.dll!Chaos::FEventManager::DispatchEvents() Line 97 C++
UnrealEditor-PhysicsCore.dll!??$?RVFPBDRigidsSolver@Chaos@@@<lambda_1>@?EB@??EndFrame@FChaosScene@@QEAAXXZ@QEBA?A_PAEAVFPBDRigidsSolver@Chaos@@@Z(Chaos::FPBDRigidsSolver & Concrete) Line 562 C++
[Inline Frame] UnrealEditor-PhysicsCore.dll!Chaos::FPhysicsSolverBase::CastHelper(const FChaosScene::EndFrame::__l65::<lambda_1> &) Line 313 C++
UnrealEditor-PhysicsCore.dll!FChaosScene::EndFrame() Line 554 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 309 C++
UnrealEditor-Engine.dll!V::TBaseUObjectMethodDelegateInstance::ExecuteIfSafe() Line 667 C++
[Inline Frame] UnrealEditor-Engine.dll!TDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfBound() Line 570 C++
[Inline Frame] UnrealEditor-Engine.dll!FSimpleDelegateGraphTask::DoTask(ENamedThreads::Type) Line 1580 C++
UnrealEditor-Engine.dll!TGraphTask<FSimpleDelegateGraphTask>::ExecuteTask(TArray<FBaseGraphTask *,TSizedDefaultAllocator<32>> & NewTasks, ENamedThreads::Type CurrentThread, bool bDeleteOnCompletion) Line 1235 C++
[Inline Frame] UnrealEditor-Core.dll!FBaseGraphTask::Execute(TArray<FBaseGraphTask *,TSizedDefaultAllocator<32>> & CurrentThread, ENamedThreads::Type) Line 840 C++
UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread(int QueueIndex, bool bAllowStall) Line 760 C++
UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit(int QueueIndex) Line 651 C++
[Inline Frame] UnrealEditor-Core.dll!FTaskGraphCompatibilityImplementation::ProcessThreadUntilRequestReturn(ENamedThreads::Type) Line 2068 C++
UnrealEditor-Core.dll!FTaskGraphCompatibilityImplementation::WaitUntilTasksComplete(const TArray<TRefCountPtr<FGraphEvent>,TSizedInlineAllocator<4,32,TSizedDefaultAllocator<32>>> & Tasks, ENamedThreads::Type CurrentThreadIfKnown) Line 2122 C++
UnrealEditor-Engine.dll!FTickTaskSequencer::ReleaseTickGroup(ETickingGroup WorldTickGroup, bool bBlockTillComplete) Line 556 C++
UnrealEditor-Engine.dll!FTickTaskManager::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 1583 C++

Check ChaosGameplayEventDispatcher.cpp line 448

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-224753 in the post.

0
Login to Vote

Fixed
ComponentUE - Simulation - Physics - Solver
Affects Versions5.4.4
Target Fix5.6
Fix Commit36532584
CreatedSep 18, 2024
ResolvedSep 24, 2024
UpdatedOct 1, 2024
View Jira Issue