Description

It seems that "Enabled per poly collision" with "Support compute skincache" causes a crash at runtime immediately.
We can easily reproduce it with ContentExample.

The logs at the crash timing...

LogWorld: Bringing World /Game/Maps/UEDPIE_0_Animation.Animation up for play (max tick rate 0) at 2018.08.16-15.00.47
Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:D:\Release420\Engine\Source\Runtime\Core\Public\Containers/Array.h] [Line: 611] 
Array index out of bounds: 2574 from an array of size 2574
Steps to Reproduce
  1. Open ContentExample
  2. Check "Support Compute SkinCache" in Rendering section in Project Settings
  3. Restart
  4. Open Animation map
  5. turn on "Enable Per Poly Collision" of Owen
  6. Simulate or PIE
  7. A crash happens immediately.
Callstack

> USkeletalMeshComponent::ComputeSkinnedPositions(USkeletalMeshComponent *, TArray<FVector,FDefaultAllocator> &, TArray<FMatrix,FDefaultAllocator> &, const FSkeletalMeshLODRenderData &, FSkinWeightVertexBuffer &) Line 1998 C++
USkeletalMeshComponent::UpdateKinematicBonesToAnim(const TArray<FTransform,FDefaultAllocator> &, ETeleportType, bool, EAllowKinematicDeferral) Line 677 C++
USkeletalMeshComponent::PostAnimEvaluation(FAnimationEvaluationContext &) Line 2334 C++
USkeletalMeshComponent::RefreshBoneTransforms(FActorComponentTickFunction *) Line 2096 C++
USkeletalMeshComponent::InitAnim(bool) Line 670 C++
USkeletalMeshComponent::InitializeComponent() Line 821 C++
AActor::InitializeComponents() Line 4312 C++
ULevel::RouteActorInitialize() Line 1813 C++
UWorld::InitializeActorsForPlay(const FURL &, bool) Line 3608 C++
UGameInstance::StartPlayInEditorGameInstance(ULocalPlayer *, const FGameInstancePIEParameters &) Line 368 C++
UEditorEngine::CreatePIEGameInstance(int, bool, bool, bool, bool, bool, float) Line 3298 C++
UEditorEngine::PlayInEditor(UWorld *, bool, FPlayInEditorOverrides) Line 2431 C++
UEditorEngine::StartQueuedPlayMapRequest() Line 1268 C++
UEditorEngine::Tick(float, bool) Line 1605 C++
UUnrealEdEngine::Tick(float, bool) Line 403 C++
FEngineLoop::Tick() Line 3495 C++
EngineTick() Line 63 C++
GuardedMain(const wchar_t *, HINSTANCE__ *, HINSTANCE__ *, int) Line 169 C++
WinMain(HINSTANCE__ *, HINSTANCE__ *, char *, int) Line 209 C++

Have Comments or More Details?

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

5
Login to Vote

Fixed
ComponentUE - Simulation - Physics
Affects Versions4.20
Target Fix4.21
Fix Commit4499017
Main Commit4551290
Release Commit4499017
CreatedAug 16, 2018
ResolvedOct 23, 2018
UpdatedNov 8, 2018