Destructable Mesh/ Radial Force Crash?

Blueprint class with Destructable Mesh as child of Scene Component.

Firework class that spawns and fires a Radial Impulse component on collision with scene.

It appears to crash either when the radial impulse is spawned, or when it is triggered to Fire Impulse.

I’ve attached some logs to help too.

MachineId:B8F8F44F43A3BFCE3F3BD59757A02FEE
EpicAccountId:bb9df9ee0d5143969c712a15a677e383

Access violation - code c0000005 (first/second chance not available)

""

UE4Editor_Engine!FBodyInstance::GetAllShapes_AssumesLocked() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\bodyinstance.cpp:341]
UE4Editor_Engine!<lambda_d862ad66b20c43db59d9bc9dbd9295b3>::operator()() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\bodyinstance.cpp:704]
UE4Editor_Engine!FBodyInstance::ExecuteOnPhysicsReadWrite() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\bodyinstance.cpp:2899]
UE4Editor_Engine!FBodyInstance::UpdatePhysicsShapeFilterData() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\bodyinstance.cpp:831]
UE4Editor_Engine!FBodyInstance::UpdatePhysicsFilterData() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\bodyinstance.cpp:934]
UE4Editor_Engine!UPrimitiveComponent::SetCollisionResponseToChannel() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\primitivecomponentphysics.cpp:869]
UE4Editor_Engine!UPrimitiveComponent::execSetCollisionResponseToChannel() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\classes\components\primitivecomponent.h:117]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\class.cpp:4125]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:463]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1552]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:673]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:587]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:673]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\class.cpp:4125]
UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1023]
UE4Editor_Engine!AActor::ProcessEvent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\actor.cpp:520]
UE4Editor_Engine!TMulticastScriptDelegate<FWeakObjectPtr>::ProcessMulticastDelegate<UObject>() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\public\uobject\scriptdelegates.h:459]
UE4Editor_Engine!UDestructibleComponent::OnDamageEvent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\components\destructiblecomponent.cpp:673]
UE4Editor_Engine!FApexChunkReport::onDamageNotify() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\physxsupport.cpp:752]
APEX_DestructiblePROFILE_x64
APEXFrameworkPROFILE_x64
UE4Editor_Engine!FPhysScene::ProcessPhysScene() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\physicsengine\physscene.cpp:730]
UE4Editor_Engine!TBaseRawMethodDelegateInstance<0,FPhysScene,void __cdecl(enum ENamedThreads::Type,TRefCountPtr<FGraphEvent> const & __ptr64),enum EPhysicsSceneType>::ExecuteIfSafe() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:582]
UE4Editor_Engine!TGraphTask<FDelegateGraphTask>::ExecuteTask() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\public\async\taskgraphinterfaces.h:771]
UE4Editor_Core!FTaskThread::ProcessTasks() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\private\async\taskgraph.cpp:430]
UE4Editor_Core!FTaskThread::ProcessTasksUntilQuit() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\private\async\taskgraph.cpp:273]
UE4Editor_Core!FTaskGraphImplementation::WaitUntilTasksComplete() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\core\private\async\taskgraph.cpp:991]
UE4Editor_Engine!FTickTaskSequencer::ReleaseTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\ticktaskmanager.cpp:243]
UE4Editor_Engine!FTickTaskManager::RunTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\ticktaskmanager.cpp:643]
UE4Editor_Engine!UWorld::RunTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\leveltick.cpp:697]
UE4Editor_Engine!UWorld::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\engine\private\leveltick.cpp:1188]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\editor\unrealed\private\editorengine.cpp:1339]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\editor\unrealed\private\unrealedengine.cpp:366]
UE4Editor!FEngineLoop::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\launch\private\launchengineloop.cpp:2359]
UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\launch\private\launch.cpp:142]
UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.8\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]

Bump (text)

Hi CelestialPanda,

I’ve spent some time trying to setup a repro project to see if I can get he crash, but I’m not seeing the same results on my end.

Do you have more specific repro steps or a sample project that can reproduce the crash that I can take a look at?

If you just provide the repro steps, make sure that any details necessary to recreating the crash in a blank project are included.

Thank you!

Tim

Only thing I can suggest is adding “a whole load” of them into a scene and firing them at once.

The tricky thing is that this particular error isn’t cropping up right now for us, but a similar one (with lots of radial forces overlapping and firing at once) seems to be. It’s a tricky one for us to catch, let alone repro, and an even trickyer one to work heads or tails of thanks to the physx error messages.

Hi CelestialPand,

I’ve tried setting up a test with multiples of these going off. Whatever I’ve got on my end is not producing any crash that I can get to happen.

If you’ve got any definitive steps to reproduce this or a sample project that reproduces this outside of your current project I can take a look to see if I can get the same on my end.

Thank you!

Tim

I have the same issue. I have a blueprint with a destructable component. The blueprint is implementing an interface, used to be able to pick up objects. So I use a physical handle to pick up the object. The crash occures when the destructable collides and thus destructs while “holding” the object, i.e. while the physical handle is active. Since I only interact with the physical handle itself in my C++ code I assume the error is not coming from my own code.

@C0dR

I’ve setup a simple example using the notes from this post, and I’m not getting a crash in 4.10.2.

Are you able to reproduce this in a blank project and if so, would you be willing to share that here for investigation? Or at the very least detail any steps that you’ve done to setup the project to reproduce the crash.

Can you also make sure to post your call stack here in a text file along with your Machine and Epic IDs.

Thank you!