Is it possible to get an AnimMontage's "Meta Data" in Blueprints?

Yes, create a blueprint function library in C++ and add this function to the header:


	/** Retrieves all Meta Data Instances from the given Animation Sequence */
	UFUNCTION(BlueprintPure, Category = "Animation")
	static void GetMetaData(const UAnimSequenceBase* AnimationSequence, TArray<UAnimMetaData*>& MetaData);

cpp:

#include "Animation/AnimSequenceBase.h"
#include "Animation/AnimMetaData.h"

(...)

void UMyBlueprintFunctionLibrary::GetMetaData(const UAnimSequenceBase* AnimationSequence, TArray<UAnimMetaData*>& MetaData)
{
	MetaData.Empty();
	if (AnimationSequence)
	{
		MetaData = AnimationSequence->GetMetaData();
	}
}

Use a cast node to cast the AnimMetaData object to your specific MetaData class.

2 Likes