2021-08-07 09:38:59 +00:00
|
|
|
// Copyright 2017-2021 Rexocrates. All Rights Reserved.
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "Engine/DataAsset.h"
|
|
|
|
#include "MirrorTable.generated.h"
|
|
|
|
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
/*Struct that contains the setup data for Mirroring a single bone or a pair of bones*/
|
|
|
|
USTRUCT(BlueprintType)
|
|
|
|
struct MIRRORANIMATIONSYSTEM_API FMirrorBone
|
|
|
|
{
|
|
|
|
GENERATED_BODY()
|
|
|
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
FName BoneName;
|
2021-08-07 09:38:59 +00:00
|
|
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
TEnumAsByte<EAxis::Type> MirrorAxis = EAxis::None;
|
2021-08-07 09:38:59 +00:00
|
|
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
TEnumAsByte<EAxis::Type> FlipAxis = EAxis::None;
|
2021-08-07 09:38:59 +00:00
|
|
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
FRotator RotationOffset = FRotator::ZeroRotator;
|
2021-08-07 09:38:59 +00:00
|
|
|
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
bool IsTwinBone = false;
|
|
|
|
|
2021-08-07 09:38:59 +00:00
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
FName TwinBoneName;
|
|
|
|
|
2021-08-07 09:38:59 +00:00
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorAnimation")
|
2025-01-28 16:09:01 +00:00
|
|
|
bool MirrorTranslation = false;
|
2021-08-07 09:38:59 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/*Data asset class that holds the MirrorBone's parameters for an entire skeleton,
|
|
|
|
this class is used for both the Mirror Pose Animgraph Node and when selecting a Mirror Table inside the Mirror AnimAsset dialog*/
|
|
|
|
UCLASS(BlueprintType)
|
|
|
|
class MIRRORANIMATIONSYSTEM_API UMirrorTable : public UDataAsset
|
|
|
|
{
|
|
|
|
GENERATED_BODY()
|
2025-01-28 16:09:01 +00:00
|
|
|
|
2021-08-07 09:38:59 +00:00
|
|
|
public:
|
2025-01-28 16:09:01 +00:00
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MirrorBoneSettings")
|
|
|
|
TArray<FMirrorBone> MirrorBones;
|
2021-08-07 09:38:59 +00:00
|
|
|
};
|