You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Added a PoseNode to the AnimInstanceProxy that we save a pose to right when we initialize the seuqencer proxy and then in RestoreState in the template we then link that anim pose to use that stored pose and then force an evaluation. #jira UE-70665 #rb max.chen, lina.halper [CL 5767595 by Mike Zyracki in Dev-Sequencer branch]
52 lines
1.6 KiB
C++
52 lines
1.6 KiB
C++
// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
|
|
|
|
/*=============================================================================
|
|
UAnimSequencerInstance.cpp: Single Node Tree Instance
|
|
Only plays one animation at a time.
|
|
=============================================================================*/
|
|
|
|
#include "AnimSequencerInstance.h"
|
|
#include "AnimSequencerInstanceProxy.h"
|
|
|
|
/////////////////////////////////////////////////////
|
|
// UAnimSequencerInstance
|
|
/////////////////////////////////////////////////////
|
|
|
|
const FName UAnimSequencerInstance::SequencerPoseName(TEXT("Sequencer_Pose_Name"));
|
|
|
|
UAnimSequencerInstance::UAnimSequencerInstance(const FObjectInitializer& ObjectInitializer)
|
|
: Super(ObjectInitializer)
|
|
{
|
|
bUseMultiThreadedAnimationUpdate = false;
|
|
}
|
|
|
|
FAnimInstanceProxy* UAnimSequencerInstance::CreateAnimInstanceProxy()
|
|
{
|
|
return new FAnimSequencerInstanceProxy(this);
|
|
}
|
|
|
|
void UAnimSequencerInstance::UpdateAnimTrack(UAnimSequenceBase* InAnimSequence, int32 SequenceId, float InPosition, float Weight, bool bFireNotifies)
|
|
{
|
|
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().UpdateAnimTrack(InAnimSequence, SequenceId, InPosition, Weight, bFireNotifies);
|
|
}
|
|
|
|
void UAnimSequencerInstance::ResetNodes()
|
|
{
|
|
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().ResetNodes();
|
|
}
|
|
|
|
void UAnimSequencerInstance::ResetPose()
|
|
{
|
|
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().ResetPose();
|
|
}
|
|
|
|
void UAnimSequencerInstance::NativeInitializeAnimation()
|
|
{
|
|
SavePose();
|
|
}
|
|
|
|
void UAnimSequencerInstance::SavePose()
|
|
{
|
|
SavePoseSnapshot(UAnimSequencerInstance::SequencerPoseName);
|
|
}
|