Files
UnrealEngine/Engine/Plugins/Animation/IKRig/Source/IKRigDeveloper/Public/AnimGraphNode_RetargetPoseFromMesh.h
Brandyn / Techy fcc1b09210 init
2026-04-04 15:40:51 -05:00

50 lines
1.8 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "AnimGraphNode_Base.h"
#include "AnimNodes/AnimNode_RetargetPoseFromMesh.h"
#include "AnimGraphNode_RetargetPoseFromMesh.generated.h"
#define UE_API IKRIGDEVELOPER_API
class FPrimitiveDrawInterface;
class USkeletalMeshComponent;
// Facilitates runtime retargeting of an input pose using a user-specified IK Retargeter asset
// Supports input poses from the animation graph, or from other skeletal mesh components
UCLASS(MinimalAPI)
class UAnimGraphNode_RetargetPoseFromMesh : public UAnimGraphNode_Base
{
GENERATED_BODY()
UPROPERTY(EditAnywhere, Category = Settings)
FAnimNode_RetargetPoseFromMesh Node;
public:
// UEdGraphNode interface
UE_API virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
UE_API virtual void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent) override;
UE_API virtual void ValidateAnimNodeDuringCompilation(USkeleton* ForSkeleton, FCompilerResultsLog& MessageLog);
// End of UEdGraphNode interface
// UAnimGraphNode_Base interface
UE_API virtual void PreloadRequiredAssets() override;
UE_API virtual void CopyNodeDataToPreviewNode(FAnimNode_Base* AnimNode) override;
UE_API virtual FEditorModeID GetEditorMode() const override;
UE_API virtual void Draw(FPrimitiveDrawInterface* PDI, USkeletalMeshComponent* PreviewSkelMeshComp) const override;
UE_API virtual void CustomizePinData(UEdGraphPin* Pin, FName SourcePropertyName, int32 ArrayIndex) const override;
virtual bool UsingCopyPoseFromMesh() const override { return true; };
// End of UAnimGraphNode_Base interface
// UK2Node interface
UE_API virtual UObject* GetJumpTargetForDoubleClick() const override;
// End of UK2Node interface
static UE_API const FName AnimModeName;
};
#undef UE_API