Files
UnrealEngine/Engine/Source/Editor/MovieSceneTools/Public/BakingAnimationKeySettings.h
2025-05-18 13:04:45 +08:00

48 lines
1.4 KiB
C

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "BakingAnimationKeySettings.generated.h"
UENUM(Blueprintable)
enum class EBakingKeySettings : uint8
{
KeysOnly UMETA(DisplayName = "Keys Only"),
AllFrames UMETA(DisplayName = "All Frames"),
};
USTRUCT(BlueprintType)
struct MOVIESCENETOOLS_API FBakingAnimationKeySettings
{
GENERATED_BODY();
FBakingAnimationKeySettings()
{
StartFrame = 0;
EndFrame = 100;
BakingKeySettings = EBakingKeySettings::KeysOnly;
FrameIncrement = 1;
bReduceKeys = false;
Tolerance = 0.001f;
}
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake")
FFrameNumber StartFrame;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake")
FFrameNumber EndFrame;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake")
EBakingKeySettings BakingKeySettings;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake", meta = (ClampMin = "1", UIMin = "1", EditCondition = "BakingKeySettings == EBakingKeySettings::AllFrames"))
int32 FrameIncrement;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake", meta = (EditCondition = "BakingKeySettings == EBakingKeySettings::AllFrames"))
bool bReduceKeys;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Bake", meta = (EditCondition = "BakingKeySettings == EBakingKeySettings::AllFrames || bReduceKeys"))
float Tolerance;
};