You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Runtime notes: - Removes 'smart name' usage across the animation systems. - Changed curve blending from a uniform array (sized per skeleton) to a sparse array of sorted named values. Blends and other combiners are performed using a dual iteration 'tape merge'. - Skeleton curves are no longer guaranteed to cover all curve names that can be found at runtime. Editor notes: - Curve metadata (flags, bone links etc.) is still present on the skeleton, but can also now exist on a skeletal mesh - Curve metadata (for morph targets) is still populated on import - Curves can now be used arbitrarily at runtime New features: - New Find/Replace dialog that allows for batch-replacing curves and notifies across all of a project's assets - New curve debugger tab in various Persona editors that allows for viewing curve values live. This also now allows viewing curves for specific pose watches. - Pose watches now output curve tracks to the Rewind Debugger #rb Jurre.deBaare,Nicholas.Frechette,Sara.Schvartzman,Helge.Mathee,Kiaran.Ritchie,Jaime.Cifuentes,Martin.Wilson,Keith.Yerex,Andrean.Franc (and more!) #jira UE-167776 #jira UE-173716 #jira UE-110407 #preflight 63fc98c81206d91a2bc3ab90 #preflight 63f3ad4f81646f1f24c240c2 [CL 24421496 by Thomas Sarkanen in ue5-main branch]
49 lines
1.5 KiB
C++
49 lines
1.5 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_ModifyCurve.h"
|
|
#include "AnimGraphNode_ModifyCurve.generated.h"
|
|
|
|
class FMenuBuilder;
|
|
|
|
/** Easy way to modify curve values on a pose */
|
|
UCLASS(MinimalAPI)
|
|
class UAnimGraphNode_ModifyCurve : public UAnimGraphNode_Base
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
UPROPERTY(EditAnywhere, Category=Settings)
|
|
FAnimNode_ModifyCurve Node;
|
|
|
|
public:
|
|
UAnimGraphNode_ModifyCurve();
|
|
|
|
// UEdGraphNode interface
|
|
virtual FText GetTooltipText() const override;
|
|
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
|
|
virtual FText GetMenuCategory() const override;
|
|
// End of UEdGraphNode interface
|
|
|
|
// UAnimGraphNode_Base interface
|
|
virtual void CustomizePinData(UEdGraphPin* Pin, FName SourcePropertyName, int32 ArrayIndex) const override;
|
|
// End of UAnimGraphNode_Base interface
|
|
|
|
// UK2Node interface
|
|
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
|
|
// End of UK2Node interface
|
|
|
|
private:
|
|
/** Remove a curve pin with the given name */
|
|
void RemoveCurvePin(FName CurveName);
|
|
/** Add a curve pin with the given name */
|
|
void AddCurvePin(FName CurveName);
|
|
/** Create submenu with options for curves to add */
|
|
void GetAddCurveMenuActions(FMenuBuilder& MenuBuilder) const;
|
|
/** Create submenu with options for curves to remove */
|
|
void GetRemoveCurveMenuActions(FMenuBuilder& MenuBuilder) const;
|
|
};
|