Description

Reproduced 3/3 times, issue does not occur in //UE5/Release-5.0 - CL 20979098 Binary. Confirmed Regression.

Seems to work fine when compiled once, but after the 2nd or 3rd time it crashes.

Steps to Reproduce
  1. Create the Third Person Template Project.
  2. Create new c++ class. Parent class is Animinstance.
  3. Add custom AnimInstanceProxy, CreateAnimInstanceProxy override, DestroyAnimInstanceProxy override and NativeInitializeAnimation
 // MyAnimInstance.h ----------------------------------------------------------------------------------------------
#pragma once

#include "CoreMinimal.h"
#include "Animation/AnimInstance.h"
#include "Animation/AnimInstanceProxy.h"
#include "MyAnimInstance.generated.h"

USTRUCT(BlueprintType)
struct FTestKAnimInstanceProxy : public FAnimInstanceProxy
{

GENERATED_BODY()

virtual void PreUpdate(UAnimInstance* Instance, float DeltaSeconds) override;
// virtual void Update(float DeltaSeconds) override;
};

/**
*
*/
UCLASS()
class BUGREPORT01_API UMyAnimInstance : public UAnimInstance
{
GENERATED_BODY()

protected:

UPROPERTY(Transient, BlueprintReadOnly, Category = "Example", meta = (AllowPrivateAccess = "true"))
FTestKAnimInstanceProxy Proxy;

virtual FTestKAnimInstanceProxy* CreateAnimInstanceProxy() override
{
return &Proxy;
}
virtual void DestroyAnimInstanceProxy(FAnimInstanceProxy* InProxy) override
{
}

public:
virtual void NativeInitializeAnimation() override;
};
// MyAnimInstance.cpp ----------------------------
#include "MyAnimInstance.h"

void FTestKAnimInstanceProxy::PreUpdate(UAnimInstance* Instance, float DeltaSeconds)
{
Super::PreUpdate(Instance, DeltaSeconds);
}

void UMyAnimInstance::NativeInitializeAnimation()
{
}
//-----------------------------------------------
  1. Save & Compile.
  2. Create animation blueprint and select 'Template'. Parent class is 'Animinstance'. This file call 'ABPT_test
  3. Connect the 'Blend Pose by bool' node to the output pose
  4. Connect the node's inputs to a "Input Pose" node & "Sequence Player" node
  5. In Details, publish the Sequence variable of Sequence Player, then expose pin as a variable. Compile
  6. Open Contents/Characters/Mannequins/Animations/ABP_Manny
  7. Change the parent class of ABP_Manny to MyAniminstance(created above). Link ABPT_test between 'control rig output' and 'output pose' and sequence.
  8. Hit the Compile button 2-3 times

Actual Result: Editor crashes

Expected Result: Editor does not crash

Callstack

 

Assertion failed: AnimBlueprintClass [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Animation\AnimNodeBase.cpp] [Line: 199]
 
UnrealEditor_Engine!FPoseLinkBase::AttemptRelink() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Animation\AnimNodeBase.cpp:199]
UnrealEditor_Engine!FAnimNode_LinkedAnimGraph::DynamicLink() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Animation\AnimNode_LinkedAnimGraph.cpp:365]
UnrealEditor_Engine!FAnimNode_LinkedAnimGraph::HandleObjectsReinstanced_Impl() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Animation\AnimNode_LinkedAnimGraph.cpp:492]
UnrealEditor_Engine!FAnimNode_CustomProperty::HandleObjectsReinstanced() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Animation\AnimNode_CustomProperty.cpp:132]
UnrealEditor_Engine!TBaseRawMethodDelegateInstance<0,FAnimNode_CustomProperty,void __cdecl(TMap<UObject *,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,UObject *,0> > const &),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:476]
UnrealEditor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\Kismet2\KismetReinstanceUtilities.cpp:2510]
UnrealEditor_UnrealEd!FBlueprintCompileReinstancer::BatchReplaceInstancesOfClass() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\Kismet2\KismetReinstanceUtilities.cpp:1622]
UnrealEditor_Kismet!FBlueprintCompilationManagerImpl::FlushReinstancingQueueImpl() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintCompilationManager.cpp:1796]
UnrealEditor_Kismet!FBlueprintCompilationManagerImpl::CompileSynchronouslyImpl() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintCompilationManager.cpp:271]
UnrealEditor_Kismet!FBlueprintCompilationManager::CompileSynchronously() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintCompilationManager.cpp:3294]
UnrealEditor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\Kismet2\Kismet2.cpp:763]
UnrealEditor_Kismet!FBlueprintEditor::Compile() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintEditor.cpp:4060]
UnrealEditor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,1,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:312]
UnrealEditor_Slate!FUICommandList::ExecuteAction() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Commands\UICommandList.cpp:111]
UnrealEditor_Slate!SToolBarButtonBlock::OnClicked() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\MultiBox\SToolBarButtonBlock.cpp:384]
UnrealEditor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,1,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:295]
UnrealEditor_Slate!SButton::ExecuteOnClick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:465]
UnrealEditor_Slate!SButton::OnMouseButtonUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:390]
UnrealEditor_Slate!<lambda_51e270ca99ea7ce852539efd04dd453f>::operator()() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5046]
UnrealEditor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_51e270ca99ea7ce852539efd04dd453f> >() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:412]
UnrealEditor_Slate!FSlateApplication::RoutePointerUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5032]
UnrealEditor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5601]
UnrealEditor_Slate!FSlateApplication::OnMouseUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5566]
UnrealEditor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2219]
UnrealEditor_ApplicationCore!FWindowsApplication::DeferMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2726]
UnrealEditor_ApplicationCore!FWindowsApplication::ProcessMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:1895]
UnrealEditor_ApplicationCore!FWindowsApplication::AppWndProc() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:925]
user32
user32
InkObj
atlthunk
user32
user32
UnrealEditor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsPlatformApplicationMisc.cpp:142]
UnrealEditor!FEngineLoop::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5291]
UnrealEditor!GuardedMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:202]
UnrealEditor!GuardedMainWrapper() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:107]
UnrealEditor!LaunchWindowsStartup() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:244]
UnrealEditor!WinMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:282]
UnrealEditor!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

 

Have Comments or More Details?

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

3
Login to Vote

Fixed
ComponentUE - Anim - Runtime - Anim Blueprints
Affects Versions5.1
Target Fix5.2
Fix Commit24671407
Main Commit24672202
Release Commit24671407
CreatedJan 10, 2023
ResolvedMar 17, 2023
UpdatedApr 29, 2023