Files
UnrealEngineUWP/Engine/Source/Runtime/AnimGraphRuntime/Private/AnimNodes/AnimNode_RefPose.cpp
Lina Halper bb3cbeb9d2 #ANIM: Moving available animnodes to AnimGraphRuntime module
[CL 2629295 by Lina Halper in Main branch]
2015-07-22 14:37:24 -04:00

51 lines
1.2 KiB
C++

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#include "AnimGraphRuntimePrivatePCH.h"
#include "AnimNodes/AnimNode_RefPose.h"
/////////////////////////////////////////////////////
// FAnimRefPoseNode
void FAnimNode_RefPose::Evaluate(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.ResetToIdentity();
break;
}
}
void FAnimNode_MeshSpaceRefPose::EvaluateComponentSpace(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);
}