Files
DedicatedServerCourse/Intermediate/Build/Win64/FPSTemplateServer/Inc/ControlRig/UHT/RigUnit_FABRIK.gen.cpp

722 lines
58 KiB
C++
Raw Normal View History

2026-01-28 19:08:51 -05:00
// Copyright Epic Games, Inc. All Rights Reserved.
/*===========================================================================
Generated code exported from UnrealHeaderTool.
DO NOT modify this manually! Edit the corresponding .h files instead!
===========================================================================*/
#include "UObject/GeneratedCppIncludes.h"
#include "Units/Highlevel/Hierarchy/RigUnit_FABRIK.h"
#include "FABRIK.h"
#include "Rigs/RigHierarchyCache.h"
#include "Rigs/RigHierarchyDefines.h"
#include "RigVMCore/RigVMFunction.h"
#include "RigVMCore/RigVMRegistry.h"
PRAGMA_DISABLE_DEPRECATION_WARNINGS
static_assert(!UE_WITH_CONSTINIT_UOBJECT, "This generated code can only be compiled with !UE_WITH_CONSTINIT_OBJECT");
void EmptyLinkFunctionForGeneratedCodeRigUnit_FABRIK() {}
// ********** Begin Cross Module References ********************************************************
ANIMATIONCORE_API UScriptStruct* Z_Construct_UScriptStruct_FFABRIKChainLink();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FCachedRigElement();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigElementKey();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigElementKeyCollection();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIK();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem();
CONTROLRIG_API UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_HighlevelBaseMutable();
COREUOBJECT_API UScriptStruct* Z_Construct_UScriptStruct_FTransform();
UPackage* Z_Construct_UPackage__Script_ControlRig();
// ********** End Cross Module References **********************************************************
// ********** Begin ScriptStruct FRigUnit_FABRIK_WorkData ******************************************
struct Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics
{
static inline consteval int32 GetStructSize() { return sizeof(FRigUnit_FABRIK_WorkData); }
static inline consteval int16 GetStructAlignment() { return alignof(FRigUnit_FABRIK_WorkData); }
#if WITH_METADATA
static constexpr UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Chain_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_CachedItems_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_CachedEffector_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
#endif // WITH_METADATA
// ********** Begin ScriptStruct FRigUnit_FABRIK_WorkData constinit property declarations **********
static const UECodeGen_Private::FStructPropertyParams NewProp_Chain_Inner;
static const UECodeGen_Private::FArrayPropertyParams NewProp_Chain;
static const UECodeGen_Private::FStructPropertyParams NewProp_CachedItems_Inner;
static const UECodeGen_Private::FArrayPropertyParams NewProp_CachedItems;
static const UECodeGen_Private::FStructPropertyParams NewProp_CachedEffector;
static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
// ********** End ScriptStruct FRigUnit_FABRIK_WorkData constinit property declarations ************
static void* NewStructOps()
{
return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps<FRigUnit_FABRIK_WorkData>();
}
static const UECodeGen_Private::FStructParams StructParams;
}; // struct Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics
static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData;
class UScriptStruct* FRigUnit_FABRIK_WorkData::StaticStruct()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.OuterSingleton)
{
Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData, (UObject*)Z_Construct_UPackage__Script_ControlRig(), TEXT("RigUnit_FABRIK_WorkData"));
}
return Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.OuterSingleton;
}
// ********** Begin ScriptStruct FRigUnit_FABRIK_WorkData Property Definitions *********************
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_Chain_Inner = { "Chain", nullptr, (EPropertyFlags)0x0000000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, 0, Z_Construct_UScriptStruct_FFABRIKChainLink, METADATA_PARAMS(0, nullptr) }; // 3096021559
const UECodeGen_Private::FArrayPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_Chain = { "Chain", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Array, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK_WorkData, Chain), EArrayPropertyFlags::None, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Chain_MetaData), NewProp_Chain_MetaData) }; // 3096021559
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedItems_Inner = { "CachedItems", nullptr, (EPropertyFlags)0x0000000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, 0, Z_Construct_UScriptStruct_FCachedRigElement, METADATA_PARAMS(0, nullptr) }; // 412962995
const UECodeGen_Private::FArrayPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedItems = { "CachedItems", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Array, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK_WorkData, CachedItems), EArrayPropertyFlags::None, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_CachedItems_MetaData), NewProp_CachedItems_MetaData) }; // 412962995
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedEffector = { "CachedEffector", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK_WorkData, CachedEffector), Z_Construct_UScriptStruct_FCachedRigElement, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_CachedEffector_MetaData), NewProp_CachedEffector_MetaData) }; // 412962995
const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::PropPointers[] = {
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_Chain_Inner,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_Chain,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedItems_Inner,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedItems,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewProp_CachedEffector,
};
static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::PropPointers) < 2048);
// ********** End ScriptStruct FRigUnit_FABRIK_WorkData Property Definitions ***********************
const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::StructParams = {
(UObject* (*)())Z_Construct_UPackage__Script_ControlRig,
nullptr,
&NewStructOps,
"RigUnit_FABRIK_WorkData",
Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::PropPointers,
UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::PropPointers),
sizeof(FRigUnit_FABRIK_WorkData),
alignof(FRigUnit_FABRIK_WorkData),
RF_Public|RF_Transient|RF_MarkAsNative,
EStructFlags(0x00000001),
METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::Struct_MetaDataParams)
};
UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.InnerSingleton)
{
UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.InnerSingleton, Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::StructParams);
}
return CastChecked<UScriptStruct>(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData.InnerSingleton);
}
// ********** End ScriptStruct FRigUnit_FABRIK_WorkData ********************************************
// ********** Begin ScriptStruct FRigUnit_FABRIK ***************************************************
struct Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics
{
static inline consteval int32 GetStructSize() { return sizeof(FRigUnit_FABRIK); }
static inline consteval int16 GetStructAlignment() { return alignof(FRigUnit_FABRIK); }
#if WITH_METADATA
static constexpr UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[] = {
{ "Category", "Hierarchy" },
{ "Comment", "/**\n * The FABRIK solver can solve N-Bone chains using \n * the Forward and Backward Reaching Inverse Kinematics algorithm.\n * For now this node supports single effector chains only.\n */" },
{ "Deprecated", "4.25" },
{ "DisplayName", "Basic FABRIK" },
{ "Keywords", "N-Bone,IK" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The FABRIK solver can solve N-Bone chains using\nthe Forward and Backward Reaching Inverse Kinematics algorithm.\nFor now this node supports single effector chains only." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_StartBone_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The first bone in the chain to solve\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The first bone in the chain to solve" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_EffectorBone_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The last bone in the chain to solve - the effector\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The last bone in the chain to solve - the effector" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_EffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The transform of the effector in global space\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The transform of the effector in global space" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Precision_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The precision to use for the fabrik solver\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The precision to use for the fabrik solver" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Weight_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The weight of the solver - how much the IK should be applied.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The weight of the solver - how much the IK should be applied." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bPropagateToChildren_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * If set to true all of the global transforms of the children\n\x09 * of this bone will be recalculated based on their local transforms.\n\x09 * Note: This is computationally more expensive than turning it off.\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "If set to true all of the global transforms of the children\nof this bone will be recalculated based on their local transforms.\nNote: This is computationally more expensive than turning it off." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_MaxIterations_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The maximum number of iterations. Values between 4 and 16 are common.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The maximum number of iterations. Values between 4 and 16 are common." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_WorkData_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bSetEffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09* The option to set the effector transform\n\x09*/" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The option to set the effector transform" },
};
#endif // WITH_METADATA
// ********** Begin ScriptStruct FRigUnit_FABRIK constinit property declarations *******************
static const UECodeGen_Private::FNamePropertyParams NewProp_StartBone;
static const UECodeGen_Private::FNamePropertyParams NewProp_EffectorBone;
static const UECodeGen_Private::FStructPropertyParams NewProp_EffectorTransform;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Precision;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Weight;
static void NewProp_bPropagateToChildren_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bPropagateToChildren;
static const UECodeGen_Private::FIntPropertyParams NewProp_MaxIterations;
static const UECodeGen_Private::FStructPropertyParams NewProp_WorkData;
static void NewProp_bSetEffectorTransform_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bSetEffectorTransform;
static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
// ********** End ScriptStruct FRigUnit_FABRIK constinit property declarations *********************
static inline constexpr FRigVMCompiledInFunctionArgument RigVMFunctionParameters_Execute[] = {
{ .Name = TEXT("StartBone"), .Type = TEXT("FName"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("EffectorBone"), .Type = TEXT("FName"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("EffectorTransform"), .Type = TEXT("FTransform"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Precision"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Weight"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bPropagateToChildren"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("MaxIterations"), .Type = TEXT("int32"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("WorkData"), .Type = TEXT("FRigUnit_FABRIK_WorkData"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bSetEffectorTransform"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
};
static inline constexpr FRigVMCompiledInFunction RigVMFunctions[] = {
{ .MethodName = TEXT("FRigUnit_FABRIK::Execute"),
.Function = &FRigUnit_FABRIK::RigVMExecute,
.Parameters = MakeArrayView(RigVMFunctionParameters_Execute),
},
};
static void* NewStructOps()
{
return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps<FRigUnit_FABRIK>();
}
static const UECodeGen_Private::FStructParams StructParams;
}; // struct Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics
static_assert(std::is_polymorphic<FRigUnit_FABRIK>() == std::is_polymorphic<FRigUnit_HighlevelBaseMutable>(), "USTRUCT FRigUnit_FABRIK cannot be polymorphic unless super FRigUnit_HighlevelBaseMutable is polymorphic");
static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK;
class UScriptStruct* FRigUnit_FABRIK::StaticStruct()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.OuterSingleton)
{
Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FRigUnit_FABRIK, (UObject*)Z_Construct_UPackage__Script_ControlRig(), TEXT("RigUnit_FABRIK"));
FRigVMRegistry::Get().RegisterCompiledInStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.OuterSingleton, MakeArrayView(Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::RigVMFunctions));
}
return Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.OuterSingleton;
}
// ********** Begin ScriptStruct FRigUnit_FABRIK Property Definitions ******************************
const UECodeGen_Private::FNamePropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_StartBone = { "StartBone", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Name, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, StartBone), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_StartBone_MetaData), NewProp_StartBone_MetaData) };
const UECodeGen_Private::FNamePropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_EffectorBone = { "EffectorBone", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Name, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, EffectorBone), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_EffectorBone_MetaData), NewProp_EffectorBone_MetaData) };
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_EffectorTransform = { "EffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, EffectorTransform), Z_Construct_UScriptStruct_FTransform, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_EffectorTransform_MetaData), NewProp_EffectorTransform_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_Precision = { "Precision", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, Precision), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Precision_MetaData), NewProp_Precision_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_Weight = { "Weight", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, Weight), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Weight_MetaData), NewProp_Weight_MetaData) };
void Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bPropagateToChildren_SetBit(void* Obj)
{
((FRigUnit_FABRIK*)Obj)->bPropagateToChildren = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bPropagateToChildren = { "bPropagateToChildren", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIK), &Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bPropagateToChildren_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bPropagateToChildren_MetaData), NewProp_bPropagateToChildren_MetaData) };
const UECodeGen_Private::FIntPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_MaxIterations = { "MaxIterations", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Int, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, MaxIterations), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_MaxIterations_MetaData), NewProp_MaxIterations_MetaData) };
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_WorkData = { "WorkData", nullptr, (EPropertyFlags)0x0010000000002000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIK, WorkData), Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_WorkData_MetaData), NewProp_WorkData_MetaData) }; // 702281917
void Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bSetEffectorTransform_SetBit(void* Obj)
{
((FRigUnit_FABRIK*)Obj)->bSetEffectorTransform = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bSetEffectorTransform = { "bSetEffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIK), &Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bSetEffectorTransform_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bSetEffectorTransform_MetaData), NewProp_bSetEffectorTransform_MetaData) };
const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::PropPointers[] = {
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_StartBone,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_EffectorBone,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_EffectorTransform,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_Precision,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_Weight,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bPropagateToChildren,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_MaxIterations,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_WorkData,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewProp_bSetEffectorTransform,
};
static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::PropPointers) < 2048);
// ********** End ScriptStruct FRigUnit_FABRIK Property Definitions ********************************
const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::StructParams = {
(UObject* (*)())Z_Construct_UPackage__Script_ControlRig,
Z_Construct_UScriptStruct_FRigUnit_HighlevelBaseMutable,
&NewStructOps,
"RigUnit_FABRIK",
Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::PropPointers,
UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::PropPointers),
sizeof(FRigUnit_FABRIK),
alignof(FRigUnit_FABRIK),
RF_Public|RF_Transient|RF_MarkAsNative,
EStructFlags(0x00000001),
METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::Struct_MetaDataParams)
};
UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIK()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.InnerSingleton)
{
UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.InnerSingleton, Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::StructParams);
}
return CastChecked<UScriptStruct>(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK.InnerSingleton);
}
void FRigUnit_FABRIK::Execute()
{
FControlRigExecuteContext TemporaryExecuteContext;
TemporaryExecuteContext.Initialize();
Execute(TemporaryExecuteContext);
}
void FRigUnit_FABRIK::Execute(FControlRigExecuteContext& InExecuteContext)
{
StaticExecute(
InExecuteContext,
StartBone,
EffectorBone,
EffectorTransform,
Precision,
Weight,
bPropagateToChildren,
MaxIterations,
WorkData,
bSetEffectorTransform
);
}
// ********** End ScriptStruct FRigUnit_FABRIK *****************************************************
// ********** Begin ScriptStruct FRigUnit_FABRIKPerItem ********************************************
struct Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics
{
static inline consteval int32 GetStructSize() { return sizeof(FRigUnit_FABRIKPerItem); }
static inline consteval int16 GetStructAlignment() { return alignof(FRigUnit_FABRIKPerItem); }
#if WITH_METADATA
static constexpr UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[] = {
{ "Category", "Hierarchy" },
{ "Comment", "/**\n * The FABRIK solver can solve N-Bone chains using \n * the Forward and Backward Reaching Inverse Kinematics algorithm.\n * For now this node supports single effector chains only.\n */" },
{ "Deprecated", "5.0" },
{ "DisplayName", "Basic FABRIK" },
{ "Keywords", "N-Bone,IK" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The FABRIK solver can solve N-Bone chains using\nthe Forward and Backward Reaching Inverse Kinematics algorithm.\nFor now this node supports single effector chains only." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Items_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The chain to use\n\x09 */" },
{ "ExpandByDefault", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The chain to use" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_EffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The transform of the effector in global space\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The transform of the effector in global space" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Precision_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The precision to use for the fabrik solver\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The precision to use for the fabrik solver" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Weight_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The weight of the solver - how much the IK should be applied.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The weight of the solver - how much the IK should be applied." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bPropagateToChildren_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * If set to true all of the global transforms of the children\n\x09 * of this bone will be recalculated based on their local transforms.\n\x09 * Note: This is computationally more expensive than turning it off.\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "If set to true all of the global transforms of the children\nof this bone will be recalculated based on their local transforms.\nNote: This is computationally more expensive than turning it off." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_MaxIterations_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The maximum number of iterations. Values between 4 and 16 are common.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The maximum number of iterations. Values between 4 and 16 are common." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_WorkData_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bSetEffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09* The option to set the effector transform\n\x09*/" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The option to set the effector transform" },
};
#endif // WITH_METADATA
// ********** Begin ScriptStruct FRigUnit_FABRIKPerItem constinit property declarations ************
static const UECodeGen_Private::FStructPropertyParams NewProp_Items;
static const UECodeGen_Private::FStructPropertyParams NewProp_EffectorTransform;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Precision;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Weight;
static void NewProp_bPropagateToChildren_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bPropagateToChildren;
static const UECodeGen_Private::FIntPropertyParams NewProp_MaxIterations;
static const UECodeGen_Private::FStructPropertyParams NewProp_WorkData;
static void NewProp_bSetEffectorTransform_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bSetEffectorTransform;
static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
// ********** End ScriptStruct FRigUnit_FABRIKPerItem constinit property declarations **************
static inline constexpr FRigVMCompiledInFunctionArgument RigVMFunctionParameters_Execute[] = {
{ .Name = TEXT("Items"), .Type = TEXT("FRigElementKeyCollection"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("EffectorTransform"), .Type = TEXT("FTransform"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Precision"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Weight"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bPropagateToChildren"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("MaxIterations"), .Type = TEXT("int32"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("WorkData"), .Type = TEXT("FRigUnit_FABRIK_WorkData"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bSetEffectorTransform"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
};
static inline constexpr FRigVMCompiledInFunction RigVMFunctions[] = {
{ .MethodName = TEXT("FRigUnit_FABRIKPerItem::Execute"),
.Function = &FRigUnit_FABRIKPerItem::RigVMExecute,
.Parameters = MakeArrayView(RigVMFunctionParameters_Execute),
},
};
static void* NewStructOps()
{
return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps<FRigUnit_FABRIKPerItem>();
}
static const UECodeGen_Private::FStructParams StructParams;
}; // struct Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics
static_assert(std::is_polymorphic<FRigUnit_FABRIKPerItem>() == std::is_polymorphic<FRigUnit_HighlevelBaseMutable>(), "USTRUCT FRigUnit_FABRIKPerItem cannot be polymorphic unless super FRigUnit_HighlevelBaseMutable is polymorphic");
static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem;
class UScriptStruct* FRigUnit_FABRIKPerItem::StaticStruct()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.OuterSingleton)
{
Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem, (UObject*)Z_Construct_UPackage__Script_ControlRig(), TEXT("RigUnit_FABRIKPerItem"));
FRigVMRegistry::Get().RegisterCompiledInStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.OuterSingleton, MakeArrayView(Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::RigVMFunctions));
}
return Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.OuterSingleton;
}
// ********** Begin ScriptStruct FRigUnit_FABRIKPerItem Property Definitions ***********************
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Items = { "Items", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, Items), Z_Construct_UScriptStruct_FRigElementKeyCollection, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Items_MetaData), NewProp_Items_MetaData) }; // 4251151882
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_EffectorTransform = { "EffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, EffectorTransform), Z_Construct_UScriptStruct_FTransform, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_EffectorTransform_MetaData), NewProp_EffectorTransform_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Precision = { "Precision", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, Precision), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Precision_MetaData), NewProp_Precision_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Weight = { "Weight", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, Weight), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Weight_MetaData), NewProp_Weight_MetaData) };
void Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bPropagateToChildren_SetBit(void* Obj)
{
((FRigUnit_FABRIKPerItem*)Obj)->bPropagateToChildren = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bPropagateToChildren = { "bPropagateToChildren", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIKPerItem), &Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bPropagateToChildren_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bPropagateToChildren_MetaData), NewProp_bPropagateToChildren_MetaData) };
const UECodeGen_Private::FIntPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_MaxIterations = { "MaxIterations", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Int, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, MaxIterations), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_MaxIterations_MetaData), NewProp_MaxIterations_MetaData) };
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_WorkData = { "WorkData", nullptr, (EPropertyFlags)0x0010000000002000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKPerItem, WorkData), Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_WorkData_MetaData), NewProp_WorkData_MetaData) }; // 702281917
void Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bSetEffectorTransform_SetBit(void* Obj)
{
((FRigUnit_FABRIKPerItem*)Obj)->bSetEffectorTransform = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bSetEffectorTransform = { "bSetEffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIKPerItem), &Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bSetEffectorTransform_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bSetEffectorTransform_MetaData), NewProp_bSetEffectorTransform_MetaData) };
const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::PropPointers[] = {
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Items,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_EffectorTransform,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Precision,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_Weight,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bPropagateToChildren,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_MaxIterations,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_WorkData,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewProp_bSetEffectorTransform,
};
static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::PropPointers) < 2048);
// ********** End ScriptStruct FRigUnit_FABRIKPerItem Property Definitions *************************
const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::StructParams = {
(UObject* (*)())Z_Construct_UPackage__Script_ControlRig,
Z_Construct_UScriptStruct_FRigUnit_HighlevelBaseMutable,
&NewStructOps,
"RigUnit_FABRIKPerItem",
Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::PropPointers,
UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::PropPointers),
sizeof(FRigUnit_FABRIKPerItem),
alignof(FRigUnit_FABRIKPerItem),
RF_Public|RF_Transient|RF_MarkAsNative,
EStructFlags(0x00000001),
METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::Struct_MetaDataParams)
};
UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.InnerSingleton)
{
UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.InnerSingleton, Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::StructParams);
}
return CastChecked<UScriptStruct>(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem.InnerSingleton);
}
void FRigUnit_FABRIKPerItem::Execute()
{
FControlRigExecuteContext TemporaryExecuteContext;
TemporaryExecuteContext.Initialize();
Execute(TemporaryExecuteContext);
}
void FRigUnit_FABRIKPerItem::Execute(FControlRigExecuteContext& InExecuteContext)
{
StaticExecute(
InExecuteContext,
Items,
EffectorTransform,
Precision,
Weight,
bPropagateToChildren,
MaxIterations,
WorkData,
bSetEffectorTransform
);
}
// ********** End ScriptStruct FRigUnit_FABRIKPerItem **********************************************
// ********** Begin ScriptStruct FRigUnit_FABRIKItemArray ******************************************
struct Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics
{
static inline consteval int32 GetStructSize() { return sizeof(FRigUnit_FABRIKItemArray); }
static inline consteval int16 GetStructAlignment() { return alignof(FRigUnit_FABRIKItemArray); }
#if WITH_METADATA
static constexpr UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[] = {
{ "Category", "Hierarchy" },
{ "Comment", "/**\n * The FABRIK solver can solve N-Bone chains using \n * the Forward and Backward Reaching Inverse Kinematics algorithm.\n * For now this node supports single effector chains only.\n */" },
{ "DisplayName", "Basic FABRIK" },
{ "Keywords", "N-Bone,IK" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "NodeColor", "0 1 1" },
{ "ToolTip", "The FABRIK solver can solve N-Bone chains using\nthe Forward and Backward Reaching Inverse Kinematics algorithm.\nFor now this node supports single effector chains only." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Items_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The chain to use\n\x09 */" },
{ "ExpandByDefault", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The chain to use" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_EffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The transform of the effector in global space\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The transform of the effector in global space" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Precision_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The precision to use for the fabrik solver\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The precision to use for the fabrik solver" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Weight_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The weight of the solver - how much the IK should be applied.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The weight of the solver - how much the IK should be applied." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bPropagateToChildren_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * If set to true all of the global transforms of the children\n\x09 * of this bone will be recalculated based on their local transforms.\n\x09 * Note: This is computationally more expensive than turning it off.\n\x09 */" },
{ "Constant", "" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "If set to true all of the global transforms of the children\nof this bone will be recalculated based on their local transforms.\nNote: This is computationally more expensive than turning it off." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_MaxIterations_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09 * The maximum number of iterations. Values between 4 and 16 are common.\n\x09 */" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The maximum number of iterations. Values between 4 and 16 are common." },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_WorkData_MetaData[] = {
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
};
static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bSetEffectorTransform_MetaData[] = {
{ "Category", "Pins" },
{ "Comment", "/**\n\x09* The option to set the effector transform\n\x09*/" },
{ "Input", "" },
{ "ModuleRelativePath", "Public/Units/Highlevel/Hierarchy/RigUnit_FABRIK.h" },
{ "ToolTip", "The option to set the effector transform" },
};
#endif // WITH_METADATA
// ********** Begin ScriptStruct FRigUnit_FABRIKItemArray constinit property declarations **********
static const UECodeGen_Private::FStructPropertyParams NewProp_Items_Inner;
static const UECodeGen_Private::FArrayPropertyParams NewProp_Items;
static const UECodeGen_Private::FStructPropertyParams NewProp_EffectorTransform;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Precision;
static const UECodeGen_Private::FFloatPropertyParams NewProp_Weight;
static void NewProp_bPropagateToChildren_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bPropagateToChildren;
static const UECodeGen_Private::FIntPropertyParams NewProp_MaxIterations;
static const UECodeGen_Private::FStructPropertyParams NewProp_WorkData;
static void NewProp_bSetEffectorTransform_SetBit(void* Obj);
static const UECodeGen_Private::FBoolPropertyParams NewProp_bSetEffectorTransform;
static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
// ********** End ScriptStruct FRigUnit_FABRIKItemArray constinit property declarations ************
static inline constexpr FRigVMCompiledInFunctionArgument RigVMFunctionParameters_Execute[] = {
{ .Name = TEXT("Items"), .Type = TEXT("TArray<FRigElementKey>"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("EffectorTransform"), .Type = TEXT("FTransform"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Precision"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("Weight"), .Type = TEXT("float"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bPropagateToChildren"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("MaxIterations"), .Type = TEXT("int32"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("WorkData"), .Type = TEXT("FRigUnit_FABRIK_WorkData"), .Direction = ERigVMFunctionArgumentDirection::Input },
{ .Name = TEXT("bSetEffectorTransform"), .Type = TEXT("bool"), .Direction = ERigVMFunctionArgumentDirection::Input },
};
static inline constexpr FRigVMCompiledInFunction RigVMFunctions[] = {
{ .MethodName = TEXT("FRigUnit_FABRIKItemArray::Execute"),
.Function = &FRigUnit_FABRIKItemArray::RigVMExecute,
.Parameters = MakeArrayView(RigVMFunctionParameters_Execute),
},
};
static void* NewStructOps()
{
return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps<FRigUnit_FABRIKItemArray>();
}
static const UECodeGen_Private::FStructParams StructParams;
}; // struct Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics
static_assert(std::is_polymorphic<FRigUnit_FABRIKItemArray>() == std::is_polymorphic<FRigUnit_HighlevelBaseMutable>(), "USTRUCT FRigUnit_FABRIKItemArray cannot be polymorphic unless super FRigUnit_HighlevelBaseMutable is polymorphic");
static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray;
class UScriptStruct* FRigUnit_FABRIKItemArray::StaticStruct()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.OuterSingleton)
{
Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray, (UObject*)Z_Construct_UPackage__Script_ControlRig(), TEXT("RigUnit_FABRIKItemArray"));
FRigVMRegistry::Get().RegisterCompiledInStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.OuterSingleton, MakeArrayView(Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::RigVMFunctions));
}
return Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.OuterSingleton;
}
// ********** Begin ScriptStruct FRigUnit_FABRIKItemArray Property Definitions *********************
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Items_Inner = { "Items", nullptr, (EPropertyFlags)0x0000000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, 0, Z_Construct_UScriptStruct_FRigElementKey, METADATA_PARAMS(0, nullptr) }; // 389243550
const UECodeGen_Private::FArrayPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Items = { "Items", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Array, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, Items), EArrayPropertyFlags::None, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Items_MetaData), NewProp_Items_MetaData) }; // 389243550
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_EffectorTransform = { "EffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, EffectorTransform), Z_Construct_UScriptStruct_FTransform, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_EffectorTransform_MetaData), NewProp_EffectorTransform_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Precision = { "Precision", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, Precision), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Precision_MetaData), NewProp_Precision_MetaData) };
const UECodeGen_Private::FFloatPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Weight = { "Weight", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, Weight), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Weight_MetaData), NewProp_Weight_MetaData) };
void Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bPropagateToChildren_SetBit(void* Obj)
{
((FRigUnit_FABRIKItemArray*)Obj)->bPropagateToChildren = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bPropagateToChildren = { "bPropagateToChildren", nullptr, (EPropertyFlags)0x0010000000020005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIKItemArray), &Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bPropagateToChildren_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bPropagateToChildren_MetaData), NewProp_bPropagateToChildren_MetaData) };
const UECodeGen_Private::FIntPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_MaxIterations = { "MaxIterations", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Int, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, MaxIterations), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_MaxIterations_MetaData), NewProp_MaxIterations_MetaData) };
const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_WorkData = { "WorkData", nullptr, (EPropertyFlags)0x0010000000002000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FRigUnit_FABRIKItemArray, WorkData), Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_WorkData_MetaData), NewProp_WorkData_MetaData) }; // 702281917
void Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bSetEffectorTransform_SetBit(void* Obj)
{
((FRigUnit_FABRIKItemArray*)Obj)->bSetEffectorTransform = 1;
}
const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bSetEffectorTransform = { "bSetEffectorTransform", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(FRigUnit_FABRIKItemArray), &Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bSetEffectorTransform_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bSetEffectorTransform_MetaData), NewProp_bSetEffectorTransform_MetaData) };
const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::PropPointers[] = {
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Items_Inner,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Items,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_EffectorTransform,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Precision,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_Weight,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bPropagateToChildren,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_MaxIterations,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_WorkData,
(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewProp_bSetEffectorTransform,
};
static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::PropPointers) < 2048);
// ********** End ScriptStruct FRigUnit_FABRIKItemArray Property Definitions ***********************
const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::StructParams = {
(UObject* (*)())Z_Construct_UPackage__Script_ControlRig,
Z_Construct_UScriptStruct_FRigUnit_HighlevelBaseMutable,
&NewStructOps,
"RigUnit_FABRIKItemArray",
Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::PropPointers,
UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::PropPointers),
sizeof(FRigUnit_FABRIKItemArray),
alignof(FRigUnit_FABRIKItemArray),
RF_Public|RF_Transient|RF_MarkAsNative,
EStructFlags(0x00000001),
METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::Struct_MetaDataParams)
};
UScriptStruct* Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray()
{
if (!Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.InnerSingleton)
{
UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.InnerSingleton, Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::StructParams);
}
return CastChecked<UScriptStruct>(Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray.InnerSingleton);
}
void FRigUnit_FABRIKItemArray::Execute()
{
FControlRigExecuteContext TemporaryExecuteContext;
TemporaryExecuteContext.Initialize();
Execute(TemporaryExecuteContext);
}
void FRigUnit_FABRIKItemArray::Execute(FControlRigExecuteContext& InExecuteContext)
{
TArrayView<const FRigElementKey> Items_0_Array(Items);
StaticExecute(
InExecuteContext,
Items_0_Array,
EffectorTransform,
Precision,
Weight,
bPropagateToChildren,
MaxIterations,
WorkData,
bSetEffectorTransform
);
}
// ********** End ScriptStruct FRigUnit_FABRIKItemArray ********************************************
// ********** Begin Registration *******************************************************************
struct Z_CompiledInDeferFile_FID_Engine_Plugins_Animation_ControlRig_Source_ControlRig_Public_Units_Highlevel_Hierarchy_RigUnit_FABRIK_h__Script_ControlRig_Statics
{
static constexpr FStructRegisterCompiledInInfo ScriptStructInfo[] = {
{ FRigUnit_FABRIK_WorkData::StaticStruct, Z_Construct_UScriptStruct_FRigUnit_FABRIK_WorkData_Statics::NewStructOps, TEXT("RigUnit_FABRIK_WorkData"),&Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK_WorkData, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FRigUnit_FABRIK_WorkData), 702281917U) },
{ FRigUnit_FABRIK::StaticStruct, Z_Construct_UScriptStruct_FRigUnit_FABRIK_Statics::NewStructOps, TEXT("RigUnit_FABRIK"),&Z_Registration_Info_UScriptStruct_FRigUnit_FABRIK, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FRigUnit_FABRIK), 3356175934U) },
{ FRigUnit_FABRIKPerItem::StaticStruct, Z_Construct_UScriptStruct_FRigUnit_FABRIKPerItem_Statics::NewStructOps, TEXT("RigUnit_FABRIKPerItem"),&Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKPerItem, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FRigUnit_FABRIKPerItem), 1612870794U) },
{ FRigUnit_FABRIKItemArray::StaticStruct, Z_Construct_UScriptStruct_FRigUnit_FABRIKItemArray_Statics::NewStructOps, TEXT("RigUnit_FABRIKItemArray"),&Z_Registration_Info_UScriptStruct_FRigUnit_FABRIKItemArray, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FRigUnit_FABRIKItemArray), 3574986517U) },
};
}; // Z_CompiledInDeferFile_FID_Engine_Plugins_Animation_ControlRig_Source_ControlRig_Public_Units_Highlevel_Hierarchy_RigUnit_FABRIK_h__Script_ControlRig_Statics
static FRegisterCompiledInInfo Z_CompiledInDeferFile_FID_Engine_Plugins_Animation_ControlRig_Source_ControlRig_Public_Units_Highlevel_Hierarchy_RigUnit_FABRIK_h__Script_ControlRig_2177840285{
TEXT("/Script/ControlRig"),
nullptr, 0,
Z_CompiledInDeferFile_FID_Engine_Plugins_Animation_ControlRig_Source_ControlRig_Public_Units_Highlevel_Hierarchy_RigUnit_FABRIK_h__Script_ControlRig_Statics::ScriptStructInfo, UE_ARRAY_COUNT(Z_CompiledInDeferFile_FID_Engine_Plugins_Animation_ControlRig_Source_ControlRig_Public_Units_Highlevel_Hierarchy_RigUnit_FABRIK_h__Script_ControlRig_Statics::ScriptStructInfo),
nullptr, 0,
};
// ********** End Registration *********************************************************************
PRAGMA_ENABLE_DEPRECATION_WARNINGS