Files
UnrealEngine/Engine/Plugins/Experimental/AnimNextAnimGraph/Source/AnimNextAnimGraphUncookedOnly/Internal/AnimGraphUncookedOnlyUtils.h
2025-05-18 13:04:45 +08:00

36 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
class URigVMNode;
class UAnimNextController;
class URigVMController;
class UAnimNextRigVMAssetEditorData;
struct FAnimNextAssetRegistryExports;
namespace UE::AnimNext::UncookedOnly
{
struct ANIMNEXTANIMGRAPHUNCOOKEDONLY_API FAnimGraphUtils
{
/** Set up a simple animation graph */
static void SetupAnimGraph(const FName EntryName, URigVMController* InController, bool bSetupUndoRedo = true, bool bPrintPythonCommand = false);
/** Check whether the supplied node is a trait stack */
static bool IsTraitStackNode(const URigVMNode* InModelNode);
// Gets the exported manifest nodes that are used by a RigVM asset
static void GetAssetManifestNodesRegistryExports(const UAnimNextRigVMAssetEditorData* InEditorData, FAnimNextAssetRegistryExports& OutExports);
// Gets all the manifest node defs that are exported to the asset registry
static bool GetExportedManifestNodesFromAssetRegistry(TArray<FAnimNextAssetRegistryExports>& OutExports);
// Returns true if the node is exposed to the manifest
static bool IsExposedToManifest(const URigVMNode* InModelNode);
static bool RequestVMAutoRecompile(UAnimNextRigVMAssetEditorData* EditorData);
};
}