UMG Graph Animation Crashing Engine

I have 2 different animation tracks that I am trying to fade in on the beat of a sound. To do this, I am using Event Construct → Delay (5) → Play Animation → Delay (3) → Play Animation. When the game hits the second delay node, the engine crashes.

Attaching both the designer view, the graph view, and the text output of the crash log (in case you guys missed the last 5 submissions :p)

MachineId:6883071648C402064263FA92D2C7CA69
EpicAccountId:3a8649fa22cb4172a6ab2d1f54dfdf68

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

""

UE4Editor_MovieScene!UMovieScene::GetTimeRange() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\moviescene\private\moviescene.cpp:187]
UE4Editor_UMG!UUMGSequencePlayer::InitSequencePlayer() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\animation\umgsequenceplayer.cpp:32]
UE4Editor_UMG!UUserWidget::PlayAnimation() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\userwidget.cpp:221]
UE4Editor_UMG!UUserWidget::execPlayAnimation() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\public\blueprint\userwidget.h:143]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\coreuobject\private\uobject\class.cpp:4195]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:484]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:698]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\coreuobject\private\uobject\class.cpp:4195]
UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1050]
UE4Editor_Engine!FLatentActionManager::TickLatentActionForObject() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\latentactionmanager.cpp:169]
UE4Editor_Engine!FLatentActionManager::ProcessLatentActions() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\latentactionmanager.cpp:77]
UE4Editor_UMG!UUserWidget::TickActionsAndAnimation() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\userwidget.cpp:772]
UE4Editor_UMG!UUserWidget::NativeTick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\userwidget.cpp:729]
UE4Editor_UMG!SObjectWidget::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\slate\sobjectwidget.cpp:60]
UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:700]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:25]
UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:703]
UE4Editor_UMG!UWidgetComponent::TickComponent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\umg\private\components\widgetcomponent.cpp:763]
UE4Editor_Engine!UActorComponent::ConditionalTickComponent() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\components\actorcomponent.cpp:1137]
UE4Editor_Engine!FActorComponentTickFunction::ExecuteTick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\components\actorcomponent.cpp:677]
UE4Editor_Engine!FTickFunctionTask::DoTask() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\ticktaskmanager.cpp:141]
UE4Editor_Engine!TGraphTask<FTickFunctionTask>::ExecuteTask() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\async\taskgraphinterfaces.h:779]
UE4Editor_Core!FTaskThread::ProcessTasks() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\private\async\taskgraph.cpp:539]
UE4Editor_Core!FTaskThread::ProcessTasksUntilQuit() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\private\async\taskgraph.cpp:340]
UE4Editor_Core!FTaskGraphImplementation::WaitUntilTasksComplete() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\private\async\taskgraph.cpp:1140]
UE4Editor_Engine!FTaskGraphInterface::WaitUntilTaskCompletes() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\async\taskgraphinterfaces.h:212]
UE4Editor_Engine!FTickTaskSequencer::ReleaseTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\ticktaskmanager.cpp:292]
UE4Editor_Engine!FTickTaskManager::RunTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\ticktaskmanager.cpp:1206]
UE4Editor_Engine!UWorld::RunTickGroup() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\leveltick.cpp:701]
UE4Editor_Engine!UWorld::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\engine\private\leveltick.cpp:1162]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\editor\unrealed\private\editorengine.cpp:1347]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\editor\unrealed\private\unrealedengine.cpp:366]
UE4Editor!FEngineLoop::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\launchengineloop.cpp:2428]
UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\launch.cpp:142]
UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]

Hello SaviorNT,

I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproduce this issue in a clean project?
  2. If so, could you provide a detailed set of steps to reproduce this issue on our end?
  3. Could you provide any other screen shots that may be involved with this issue?

One thing I should also add is that this is using 3d widget (which is still experimental stage, but I need to have it :)… I’ll make a clean project to repro the issue tonight, but in the mean-time, here are the steps that I did when I created the widget:

  • Created UMG widget
  • Added text box and put in some text. Positioned it in the center
  • Added an animation (IRS), and put in the text box, selected the opacity for a fade in/out animation
  • Added the delay → play animation nodes to the event graph
  • Added a widget actor to the scene, and set it to the UMG widget
  • Positioned this actor so the text was visible in the scene
  • At this point, everything worked as it should
  • Added another text object
  • I had some issues with the 2nd text object not adhering to the specific time frames in the timeline, so I decided to create a new animation (TrueEvents)
  • Adjusted that animation opacity, set up another delay → play animation
  • Upon testing, the engine CTD’d with the crash report, relaunched, same thing (x5)

After following the steps above I was unable to reproduce this issue on our end. When ever you are able to get this to reproduce in a clean project please let me know if and where there may be any variations in the instructions needed to reproduce this issue on our end.

I tried duplicating the UMG animation in a clean project, and it acted as intended (no crashing). Looking at the diagnostics log, it looks like moviescene.cpp is crashing with an access violation, c-thousand-5, at line 186:

for (int32 TypeIndex = 0; TypeIndex < MasterTracks.Num(); ++TypeIndex)

So far the things I have tried to eliminate from the test project:

  • Font (default font still crashes)
  • Other matinee / audio cues playing (disabled everything, still crashes)
  • Zorder on the text boxes, crashes
  • Tick when offscreen - enabled this, no go.

Looking through the call stack (I’m hardly familiar with c++), the entine does it’s tick event in unrealedengine.cpp:366, and then it calls up the engine loop tick in launchengineloop.cpp:2428… at this point, there are Guarded windows which come up (guarded can’t be good, right?)

Even playing in stand alone, it crashes.

I did migrate the UMG widget and actor to the TPP template, and it crashed as it does in the main project. (same project that I re-built the same animation).

I’ll try deleting it and rebuilding the animation to see if that makes a difference.

Ok, so I went ahead and deleted the UMG widget and the actor. I then re-created the animation, and it is no longer crashing. I can only presume that blueprints put a 1 where there was supposed to be a 0 (blueprint corruption).