Description

Error message:

Assertion failed: (Index >= 0) & (Index < ArrayNum) [Link Removed] [Line: 633] Array index out of bounds: 68 from an array of size 68

Source Context:

  733       
  734       ExtractBoneTransform(RawAnimationData, OutAtom, TrackIndex, Time);
  735       }
  736       
  737       void UAnimSequence::ExtractBoneTransform(const TArray<struct FRawAnimSequenceTrack>& InRawAnimationData, FTransform& OutAtom, int32 TrackIndex, float Time) const
  738       {
  739       // Bail out if the animation data doesn't exists (e.g. was stripped by the cooker).
  740       if(InRawAnimationData.Num() == 0)
  741       {
  742       UE_LOG(LogAnimation, Log, TEXT("UAnimSequence::GetBoneTransform : No anim data in AnimSequence[%s]!"),*GetFullName());
  743       OutAtom.SetIdentity();
  744       return;
  745       }
  746       
  747 ***** ExtractBoneTransform(InRawAnimationData[TrackIndex], OutAtom, Time);
  748       }
  749       
  750       void UAnimSequence::ExtractBoneTransform(const struct FRawAnimSequenceTrack& RawTrack, FTransform& OutAtom, int32 KeyIndex) const
  751       {
  752       // Bail out (with rather wacky data) if data is empty for some reason.
  753       if (RawTrack.PosKeys.Num() == 0 || RawTrack.RotKeys.Num() == 0)
  754       {
  755       UE_LOG(LogAnimation, Log, TEXT("UAnimSequence::GetBoneTransform : No anim data in AnimSequence!"));
  756       OutAtom.SetIdentity();
  757       return;
  758       }
  759       
  760       const int32 PosKeyIndex = FMath::Min(KeyIndex, RawTrack.PosKeys.Num() - 1);
  761       const int32 RotKeyIndex = FMath::Min(KeyIndex, RawTrack.RotKeys.Num() - 1);
  762       static const FVector DefaultScale3D = FVector(1.f);

Most recent user affected CL: 3286799

Logs: [Link Removed]


CrashReporter User Descriptions:

  • EUS Matt.Williams - Same as last
Steps to Reproduce
  1. Download the attached Zip file
  2. You'll find the following folder structure:
  3. Import ExtraBoneTest\Mannequin.FBX
  4. Import ExtraBoneTest\BasicAnim.fbx onto the MannequinSkeleton
  5. Open the BasicAnim, Select a bone and rotate it
  6. Hit the Key button (toolbar), creating an Additive Layer Track
  7. Save all
  8. In your folder, copy the contents of ExtraBoneTest/ExtraBone to ExtraBoneTest (overwriting the files that you had just imported)
  9. Right Click the Skeletal Mesh>Reimport
  10. Right Click the Animation>Reimport

Result: Crash
Expected: Reimports correctly

Callstack
UE4Editor_Engine!UAnimSequence::ExtractBoneTransform() [animsequence.cpp:748]
UE4Editor_Engine!FAnimationUtils::ComputeCompressionError() [animationutils.cpp:269]
UE4Editor_Engine!FAnimationUtils::CompressAnimSequenceExplicit() [animationutils.cpp:720]
UE4Editor_Engine!FAnimationUtils::CompressAnimSequence() [animationutils.cpp:579]
UE4Editor_Engine!FDerivedDataAnimationCompression::Build() [animcompressionderiveddata.cpp:124]
UE4Editor_DerivedDataCache!FDerivedDataCache::FBuildAsyncWorker::DoWork() [deriveddatacache.cpp:158]
UE4Editor_DerivedDataCache!FAsyncTask<FDerivedDataCache::FBuildAsyncWorker>::DoWork() [asyncwork.h:264]
UE4Editor_DerivedDataCache!FAsyncTask<FDerivedDataCache::FBuildAsyncWorker>::Start() [asyncwork.h:252]
UE4Editor_DerivedDataCache!FDerivedDataCache::GetSynchronous() [deriveddatacache.cpp:233]
UE4Editor_Engine!UAnimSequence::RequestAnimCompression() [animsequence.cpp:2074]
UE4Editor_Engine!UAnimSequence::RequestAnimCompression() [animsequence.cpp:2019]
UE4Editor_Engine!UAnimSequence::PostProcessSequence() [animsequence.cpp:3359]
UE4Editor_Engine!UAnimSequence::BakeTrackCurvesToRawAnimation() [animsequence.cpp:4218]
UE4Editor_UnrealEd!UnFbx::FFbxImporter::ImportAnimation() [skeletalmeshedit.cpp:1460]
UE4Editor_UnrealEd!UEditorEngine::ReimportFbxAnimation() [skeletalmeshedit.cpp:213]
UE4Editor_UnrealEd!UReimportFbxAnimSequenceFactory::Reimport() [editorfactories.cpp:5422]
UE4Editor_UnrealEd!FReimportManager::Reimport() [editor.cpp:273]
UE4Editor_UnrealEd!FReimportManager::ReimportMultiple() [editor.cpp:477]
UE4Editor_UnrealEd!FReimportManager::ValidateAllSourceFileAndReimport() [editor.cpp:448]
UE4Editor_ContentBrowser!FAssetContextMenu::ExecuteReimport() [assetcontextmenu.cpp:1402]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,FAssetContextMenu,0,TTypeWrapper<void> __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,FAssetContextMenu,0,void __cdecl() [delegateinstancesimpl.h:433]
UE4Editor_Slate!SMenuEntryBlock::OnClicked() [smenuentryblock.cpp:1050]
UE4Editor_Slate!SMenuEntryBlock::OnMenuItemButtonClicked() [smenuentryblock.cpp:1001]
UE4Editor_Slate!TMemberFunctionCaller<SMenuEntryBlock,FReply() [delegateinstanceinterface.h:165]
UE4Editor_Slate!TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SMenuEntryBlock,FReply() [tuple.h:134]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SMenuEntryBlock,0,FReply __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:537]
UE4Editor_Slate!SButton::OnMouseButtonUp() [sbutton.cpp:278]
UE4Editor_Slate!SMenuEntryButton::OnMouseButtonUp() [smenuentryblock.cpp:399]
UE4Editor_Slate!<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1>::operator() [slateapplication.cpp:5075]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1> >() [slateapplication.cpp:238]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5064]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5531]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5508]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1698]
UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2120]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:714]
user32!<Unknown>
user32!<Unknown>
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:980]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:2977]
UE4Editor!GuardedMain() [launch.cpp:166]
UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134]
UE4Editor!WinMain() [launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [exe_common.inl:264]
kernel32!<Unknown>
ntdll!<Unknown>

Have Comments or More Details?

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

0
Login to Vote

Fixed
ComponentOLD - Anim
Affects Versions4.14.34.15
Target Fix4.15.1
Fix Commit3321096
CreatedFeb 13, 2017
ResolvedMar 7, 2017
UpdatedMay 18, 2020