Might relate to issue [Link Removed] - "The Remove-On-Break feature, set on Fracture Mode on Geometry Collections, stops shrinking and shows strange behaviors"
The added information on this particular bug is that a GeometryCollection (GC) that has multiple levels and had the first level broken will have its clusters start to shrink normally as a group, but the moment the next level is broken, the shrinking process resets, the size goes up to full size, and it starts shrinking again. What causes quite a noticeable effect of a "pop". This is unavoidable. If the GC is sleeping it will not animate the shrinking further and stay at full size. If it is awake it will animate shrinking like normal, but the popping is still very noticeable
Remove on Break instructions:
> UnrealEditor-GeometryCollectionEngine.dll!UGeometryCollectionComponent::UpdateBrokenAndDecayedStates() Line 4110 C++
UnrealEditor-GeometryCollectionEngine.dll!UGeometryCollectionComponent::OnPostPhysicsSync() Line 4337 C++
[Inline Frame] UnrealEditor-Chaos.dll!UE::Core::Private::Function::TFunctionRefBase<UE::Core::Private::Function::TFunctionStorage<0>,void __cdecl(void)>::operator()() Line 555 C++
UnrealEditor-Chaos.dll!FGeometryCollectionPhysicsProxy::PullFromPhysicsState(const Chaos::FDirtyGeometryCollectionData & PullData, const int SolverSyncTimestamp, const Chaos::FDirtyGeometryCollectionData * NextPullData, const float * Alpha, const Chaos::FDirtyRigidParticleReplicationErrorData * Error, const double AsyncFixedTimeStep) Line 4458 C++
UnrealEditor-Engine.dll!Chaos::FPhysicsSolverBase::PullPhysicsStateForEachDirtyProxy_External<`FPhysScene_Chaos::OnSyncBodies'::`2'::FDispatcher>(FPhysScene_Chaos::OnSyncBodies::__l2::FDispatcher & Dispatcher) Line 164 C++
[Inline Frame] UnrealEditor-Engine.dll!UE::Core::Private::Function::TFunctionRefBase<UE::Core::Private::Function::FFunctionRefStoragePolicy,void __cdecl(FPhysScene_Chaos *)>::operator()(FPhysScene_Chaos * <Params_0>) Line 555 C++
UnrealEditor-Engine.dll!FPhysInterface_Chaos::ExecuteWrite(FPhysScene_Chaos * InScene, TFunctionRef<void __cdecl(FPhysScene_Chaos *)> InCallable) Line 630 C++
UnrealEditor-Engine.dll!FPhysScene_Chaos::OnSyncBodies(Chaos::FPhysicsSolverBase * Solver) Line 2417 C++
UnrealEditor-PhysicsCore.dll!FChaosScene::SyncBodies<Chaos::FPBDRigidsSolver>(Chaos::FPBDRigidsSolver * Solver) Line 459 C++
UnrealEditor-PhysicsCore.dll!`FChaosScene::EndFrame'::`65'::<lambda_1>::operator()<Chaos::FPBDRigidsSolver>(Chaos::FPBDRigidsSolver & Concrete) Line 559 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!TBaseUObjectMethodDelegateInstance<0,UWorld,void __cdecl(void),FDefaultDelegateUserPolicy>::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++
UnrealEditor-Engine.dll!UWorld::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 772 C++
UnrealEditor-Engine.dll!UWorld::Tick(ELevelTick TickType, float DeltaSeconds) Line 1521 C++
UnrealEditor-UnrealEd.dll!UEditorEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 2015 C++
UnrealEditor-UnrealEd.dll!UUnrealEdEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 550 C++
UnrealEditor.exe!FEngineLoop::Tick() Line 5921 C++
[Inline Frame] UnrealEditor.exe!EngineTick() Line 61 C++
UnrealEditor.exe!GuardedMain(const wchar_t * CmdLine) Line 180 C++
UnrealEditor.exe!GuardedMainWrapper(const wchar_t * CmdLine) Line 118 C++
UnrealEditor.exe!LaunchWindowsStartup(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow, const wchar_t * CmdLine) Line 258 C++
UnrealEditor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * pCmdLine, int nCmdShow) Line 298 C++
[External Code]
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-228164 in the post.
0 |
Component | UE - Simulation - Physics - Destruction |
---|---|
Affects Versions | 5.4.4 |
Target Fix | 5.6 |
Created | Oct 18, 2024 |
---|---|
Updated | Oct 23, 2024 |