Files
UnrealEngineUWP/Engine/Source/Runtime/AnimGraphRuntime/Private/AnimNodes/AnimNode_RefPose.cpp
Thomas Sarkanen 8ba3c4c087 Merging //UE4/Dev-Main to Dev-Anim (//UE4/Dev-Anim) @ CL 4643671
#rb none
#jira none

[CL 4665410 by Thomas Sarkanen in Dev-Anim branch]
2018-12-17 06:31:16 -05:00

51 lines
1.2 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "AnimNodes/AnimNode_RefPose.h"
/////////////////////////////////////////////////////
// FAnimRefPoseNode
void FAnimNode_RefPose::Evaluate_AnyThread(FPoseContext& Output)
{
// I don't have anything to evaluate. Should this be even here?
// EvaluateGraphExposedInputs.Execute(Context);
switch (RefPoseType)
{
case EIT_LocalSpace:
Output.ResetToRefPose();
break;
case EIT_Additive:
default:
Output.ResetToAdditiveIdentity();
break;
}
}
void FAnimNode_MeshSpaceRefPose::EvaluateComponentSpace_AnyThread(FComponentSpacePoseContext& Output)
{
Output.ResetToRefPose();
}
/** Helper for enum output... */
#ifndef CASE_ENUM_TO_TEXT
#define CASE_ENUM_TO_TEXT(txt) case txt: return TEXT(#txt);
#endif
const TCHAR* GetRefPostTypeText(ERefPoseType RefPose)
{
switch (RefPose)
{
FOREACH_ENUM_EREFPOSETYPE(CASE_ENUM_TO_TEXT)
}
return TEXT("Unknown Ref Pose Type");
}
void FAnimNode_RefPose::GatherDebugData(FNodeDebugData& DebugData)
{
FString DebugLine = DebugData.GetNodeName(this);
DebugLine += FString::Printf(TEXT("(Ref Pose Type: %s)"), GetRefPostTypeText(RefPoseType));
DebugData.AddDebugItem(DebugLine, true);
}