Description

This is a common crash affecting users in 4.16.

User Descriptions

  • Pressing the button to restart the basic mesh in the destruction editor causes the crash.
  • Refreshing a Destructible Mesh that has had it's static mesh updated.
  • Refreshing Destructible Mesh
  • Imported static mesh, created destruction mesh, reimported static mesh and hit refresh on destruction mesh.

Source Context

 802       		for (int32 LodIndex = 0; LodIndex < ImportedResource->LODModels.Num(); ++LodIndex)
  803       		{
  804       			ExistingMeshDataPtr->ExistingImportMeshLodSectionMaterialData.AddZeroed();
  805       			for (int32 SectionIndex = 0; SectionIndex < ImportedResource->LODModels[LodIndex].Sections.Num(); ++SectionIndex)
  806       			{
  807       				int32 SectionMaterialIndex = ImportedResource->LODModels[LodIndex].Sections[SectionIndex].MaterialIndex;
  808       				bool SectionCastShadow = ImportedResource->LODModels[LodIndex].Sections[SectionIndex].bCastShadow;
  809       				bool SectionRecomputeTangents = ImportedResource->LODModels[LodIndex].Sections[SectionIndex].bRecomputeTangent;
  810 ***** 				ExistingMeshDataPtr->ExistingImportMeshLodSectionMaterialData[LodIndex].Add(ExistingMeshLodSectionData(ExistingMeshDataPtr->ExistingImportMaterialOriginalNameData[SectionMaterialIndex], SectionCastShadow, SectionRecomputeTangents));
  811       			}
  812       		}
Steps to Reproduce

repro steps currently unknown, but seems to occur when refreshing a destructible mesh

Callstack
Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\Core\Public\Containers/Array.h] [Line: 633] 
Array index out of bounds: 1 from an array of size 1

UE4Editor_UnrealEd!SaveExistingSkelMeshData() [skeletalmeshimport.cpp:811]
UE4Editor_UnrealEd!SaveExistingDestMeshData() [apexdestructibleassetimport.cpp:243]
UE4Editor_UnrealEd!SetApexDestructibleAsset() [apexdestructibleassetimport.cpp:751]
UE4Editor_UnrealEd!BuildDestructibleMeshFromFractureSettings() [apexdestructibleassetimport.cpp:992]
UE4Editor_Engine!UDestructibleMesh::BuildFromStaticMesh() [destructiblemesh.cpp:717]
UE4Editor_DestructibleMeshEditor!FDestructibleMeshEditorViewportClient::RefreshFromStaticMesh() [sdestructiblemesheditorviewport.cpp:242]
UE4Editor_DestructibleMeshEditor!TBaseSPMethodDelegateInstance<0,FDestructibleMeshEditorViewportClient,0,TTypeWrapper<void> __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_DestructibleMeshEditor!TBaseSPMethodDelegateInstance<0,FDestructibleMeshEditorViewportClient,0,void __cdecl() [delegateinstancesimpl.h:434]
UE4Editor_Slate!FUICommandList::ExecuteAction() [uicommandlist.cpp:97]
UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [stoolbarbuttonblock.cpp:305]
UE4Editor_Slate!TMemberFunctionCaller<SToolBarButtonBlock,FReply() [delegateinstanceinterface.h:165]
UE4Editor_Slate!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SToolBarButtonBlock,FReply() [tuple.h:497]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:537]
UE4Editor_Slate!SButton::OnMouseButtonUp() [sbutton.cpp:278]
UE4Editor_Slate!<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1>::operator() [slateapplication.cpp:5049]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1> >() [slateapplication.cpp:239]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5038]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5515]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5495]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1704]
UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2127]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:714]
user32!UserCallWinProcCheckWow()
user32!DispatchMessageWorker()
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:1009]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:3058]
UE4Editor!GuardedMain() [launch.cpp:166]
UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134]
UE4Editor!WinMain() [launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [exe_common.inl:253]
kernel32!BaseThreadInitThunk()
ntdll!RtlUserThreadStart()

Have Comments or More Details?

There's no existing public thread on this issue, so head over to AnswerHub just mention UE-47526 in the post.

0
Login to Vote

Fixed
ComponentPhysics - Destruction
Affects Versions4.16
Target Fix4.17
Fix Commit3474099
CreatedJul 20, 2017
ResolvedJul 20, 2017
UpdatedApr 27, 2018