blueprint

FootIK

  • Exposure: public
  • UE Version: 5.1

anonymous

May 23, 2023, 5:15 pm

Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="BeginExecution" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object ResolvedFunctionName="FRigUnit_BeginExecution::Execute" NodeTitle="Forwards Solve" NodeColor=(R=1.000000,G=0.000000,B=0.000000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="SequenceExecution" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="A" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="B" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="C" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="D" End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=Input CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="A" DisplayName="A" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="B" DisplayName="B" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="C" DisplayName="C" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="D" DisplayName="D" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object ResolvedFunctionName="FRigUnit_SequenceExecution::Execute" NodeTitle="Sequence" Position=(X=256.000000,Y=0.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"A"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"B"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"C"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"D"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMFunctionReferenceNode Name="FootTrace" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Ik Foot Bone" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Offset" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Ik Foot Bone" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_L" CustomWidgetName="ElementName" End Object Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Offset" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Direction=Output bIsExpanded=True CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object ReferencedNodePtr="/Game/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.CR_Mannequin_BasicFootIK:RigVMFunctionLibrary.FootTrace" PreferredPermutationPairs(0)=(Argument="ExecuteContext",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") PreferredPermutationPairs(1)=(Argument="Ik Foot Bone",TypeIndex=109,TypeString="FRigElementKey,/Script/ControlRig.RigElementKey") PreferredPermutationPairs(2)=(Argument="Offset",TypeIndex=38,TypeString="FVector,/Script/CoreUObject.Vector") Position=(X=1280.000000,Y=-544.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Ik Foot Bone"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Offset"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="ModifyTransforms" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ItemToModify" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="0" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Item" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Weight" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMinimum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMaximum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Mode" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WorkData" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="CachedItems" End Object End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="ItemToModify" Begin Object Name="0" Begin Object Name="Item" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_L" CustomWidgetName="ElementName" End Object DisplayName="Item" Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Input CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Input bIsExpanded=True CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Input bIsExpanded=True CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Direction=Input bIsExpanded=True CPPType="FRigUnit_ModifyTransforms_PerItem" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Item"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Transform"' End Object DisplayName="Item to Modify" Direction=Input bIsExpanded=True CPPType="TArray<FRigUnit_ModifyTransforms_PerItem>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"0"' End Object Begin Object Name="Weight" DisplayName="Weight" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="WeightMinimum" DisplayName="Weight Minimum" Direction=Input bIsConstant=True CPPType="float" End Object Begin Object Name="WeightMaximum" DisplayName="Weight Maximum" Direction=Input bIsConstant=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Mode" DisplayName="Mode" Direction=Input bIsConstant=True CPPType="EControlRigModifyBoneMode" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.EControlRigModifyBoneMode"' CPPTypeObjectPath="/Script/ControlRig.EControlRigModifyBoneMode" DefaultValue="AdditiveGlobal" End Object Begin Object Name="WorkData" Begin Object Name="CachedItems" DisplayName="Cached Items" Direction=Hidden bIsDynamicArray=True CPPType="TArray<FCachedRigElement>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.CachedRigElement"' CPPTypeObjectPath="/Script/ControlRig.CachedRigElement" DefaultValue="()" End Object DisplayName="Work Data" Direction=Hidden bIsDynamicArray=True CPPType="FRigUnit_ModifyTransforms_WorkData" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_WorkData"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_WorkData" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"CachedItems"' End Object ResolvedFunctionName="FRigUnit_ModifyTransforms::Execute" NodeTitle="Modify Transforms" Position=(X=1024.000000,Y=448.000000) NodeColor=(R=0.000000,G=0.364706,B=1.000000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"ItemToModify"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Weight"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"WeightMinimum"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"WeightMaximum"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"Mode"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"WorkData"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="PBIK" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Root" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Effectors" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="0" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bone" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PositionAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="RotationAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="StrengthAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PullChainAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PinRotation" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bone" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PositionAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="RotationAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="StrengthAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PullChainAlpha" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="PinRotation" End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="EffectorSolverIndices" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="BoneSettings" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExcludedBones" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Settings" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Iterations" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="MassMultiplier" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="MinMassMultiplier" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bAllowStretch" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="RootBehavior" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bStartSolveFromInputPose" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Debug" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="DrawScale" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bDrawDebug" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="BoneSettingToSolverBoneIndex" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="SolverBoneToElementIndex" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Solver" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bNeedsInit" End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Root" DisplayName="Root" Direction=Input CPPType="FName" DefaultValue="animation_root" CustomWidgetName="BoneName" End Object Begin Object Name="Effectors" Begin Object Name="0" Begin Object Name="Bone" DisplayName="Bone" Direction=Input CPPType="FName" DefaultValue="foot_l" CustomWidgetName="BoneName" End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Input CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Input CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Begin Object Name="PositionAlpha" DisplayName="Position Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="RotationAlpha" DisplayName="Rotation Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="StrengthAlpha" DisplayName="Strength Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="PullChainAlpha" DisplayName="Pull Chain Alpha" Direction=Input CPPType="float" DefaultValue="0.000000" End Object Begin Object Name="PinRotation" DisplayName="Pin Rotation" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Direction=Input bIsExpanded=True CPPType="FPBIKEffector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKEffector"' CPPTypeObjectPath="/Script/PBIK.PBIKEffector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Bone"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Transform"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"PositionAlpha"' SubPins(3)=/Script/RigVMDeveloper.RigVMPin'"RotationAlpha"' SubPins(4)=/Script/RigVMDeveloper.RigVMPin'"StrengthAlpha"' SubPins(5)=/Script/RigVMDeveloper.RigVMPin'"PullChainAlpha"' SubPins(6)=/Script/RigVMDeveloper.RigVMPin'"PinRotation"' End Object Begin Object Name="1" Begin Object Name="Bone" DisplayName="Bone" Direction=Input CPPType="FName" DefaultValue="foot_r" CustomWidgetName="BoneName" End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Input CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Input CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Begin Object Name="PositionAlpha" DisplayName="Position Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="RotationAlpha" DisplayName="Rotation Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="StrengthAlpha" DisplayName="Strength Alpha" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="PullChainAlpha" DisplayName="Pull Chain Alpha" Direction=Input CPPType="float" DefaultValue="0.000000" End Object Begin Object Name="PinRotation" DisplayName="Pin Rotation" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Direction=Input bIsExpanded=True CPPType="FPBIKEffector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKEffector"' CPPTypeObjectPath="/Script/PBIK.PBIKEffector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Bone"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Transform"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"PositionAlpha"' SubPins(3)=/Script/RigVMDeveloper.RigVMPin'"RotationAlpha"' SubPins(4)=/Script/RigVMDeveloper.RigVMPin'"StrengthAlpha"' SubPins(5)=/Script/RigVMDeveloper.RigVMPin'"PullChainAlpha"' SubPins(6)=/Script/RigVMDeveloper.RigVMPin'"PinRotation"' End Object DisplayName="Effectors" Direction=Input bIsExpanded=True CPPType="TArray<FPBIKEffector>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKEffector"' CPPTypeObjectPath="/Script/PBIK.PBIKEffector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"0"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"1"' End Object Begin Object Name="EffectorSolverIndices" DisplayName="Effector Solver Indices" Direction=Hidden bIsDynamicArray=True CPPType="TArray<int32>" DefaultValue="()" End Object Begin Object Name="BoneSettings" DisplayName="Bone Settings" Direction=Input CPPType="TArray<FPBIKBoneSetting>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKBoneSetting"' CPPTypeObjectPath="/Script/PBIK.PBIKBoneSetting" DefaultValue="()" End Object Begin Object Name="ExcludedBones" DisplayName="Excluded Bones" Direction=Input CPPType="TArray<FName>" DefaultValue="()" CustomWidgetName="BoneName" End Object Begin Object Name="Settings" Begin Object Name="Iterations" DisplayName="Iterations" Direction=Input CPPType="int32" DefaultValue="20" End Object Begin Object Name="MassMultiplier" DisplayName="Mass Multiplier" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="MinMassMultiplier" DisplayName="Min Mass Multiplier" Direction=Input CPPType="float" DefaultValue="0.200000" End Object Begin Object Name="bAllowStretch" DisplayName="Allow Stretch" Direction=Input CPPType="bool" DefaultValue="false" End Object Begin Object Name="RootBehavior" DisplayName="Root Behavior" Direction=Input CPPType="EPBIKRootBehavior" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/PBIK.EPBIKRootBehavior"' CPPTypeObjectPath="/Script/PBIK.EPBIKRootBehavior" DefaultValue="PinToInput" End Object Begin Object Name="bStartSolveFromInputPose" DisplayName="Start Solve from Input Pose" Direction=Input CPPType="bool" DefaultValue="True" End Object DisplayName="Settings" Direction=Input bIsExpanded=True CPPType="FPBIKSolverSettings" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKSolverSettings"' CPPTypeObjectPath="/Script/PBIK.PBIKSolverSettings" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Iterations"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"MassMultiplier"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"MinMassMultiplier"' SubPins(3)=/Script/RigVMDeveloper.RigVMPin'"bAllowStretch"' SubPins(4)=/Script/RigVMDeveloper.RigVMPin'"RootBehavior"' SubPins(5)=/Script/RigVMDeveloper.RigVMPin'"bStartSolveFromInputPose"' End Object Begin Object Name="Debug" Begin Object Name="DrawScale" DisplayName="Draw Scale" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="bDrawDebug" DisplayName="Draw Debug" Direction=Input CPPType="bool" End Object DisplayName="Debug" Direction=Input CPPType="FPBIKDebug" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKDebug"' CPPTypeObjectPath="/Script/PBIK.PBIKDebug" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"DrawScale"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"bDrawDebug"' End Object Begin Object Name="BoneSettingToSolverBoneIndex" DisplayName="Bone Setting to Solver Bone Index" Direction=Hidden bIsDynamicArray=True CPPType="TArray<int32>" DefaultValue="()" End Object Begin Object Name="SolverBoneToElementIndex" DisplayName="Solver Bone to Element Index" Direction=Hidden bIsDynamicArray=True CPPType="TArray<int32>" DefaultValue="()" End Object Begin Object Name="Solver" DisplayName="Solver" Direction=Hidden bIsDynamicArray=True CPPType="FPBIKSolver" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/PBIK.PBIKSolver"' CPPTypeObjectPath="/Script/PBIK.PBIKSolver" DefaultValue="()" End Object Begin Object Name="bNeedsInit" DisplayName="Needs Init" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object ResolvedFunctionName="FRigUnit_PBIK::Execute" NodeTitle="Full Body IK" Position=(X=1120.000000,Y=1024.000000) NodeColor=(R=0.000000,G=1.000000,B=1.000000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Root"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Effectors"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"EffectorSolverIndices"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"BoneSettings"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"ExcludedBones"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"Settings"' Pins(7)=/Script/RigVMDeveloper.RigVMPin'"Debug"' Pins(8)=/Script/RigVMDeveloper.RigVMPin'"BoneSettingToSolverBoneIndex"' Pins(9)=/Script/RigVMDeveloper.RigVMPin'"SolverBoneToElementIndex"' Pins(10)=/Script/RigVMDeveloper.RigVMPin'"Solver"' Pins(11)=/Script/RigVMDeveloper.RigVMPin'"bNeedsInit"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="GetTransform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Item" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Space" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInitial" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="CachedIndex" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Key" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Index" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ContainerVersion" End Object End Object Begin Object Name="Item" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_L" CustomWidgetName="ElementName" End Object DisplayName="Item" Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Space" DisplayName="Space" Direction=Input CPPType="EBoneGetterSetterMode" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.EBoneGetterSetterMode"' CPPTypeObjectPath="/Script/ControlRig.EBoneGetterSetterMode" DefaultValue="GlobalSpace" End Object Begin Object Name="bInitial" DisplayName="Initial" Direction=Input CPPType="bool" End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Output CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Output CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Output CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Output CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Begin Object Name="CachedIndex" Begin Object Name="Key" Begin Object Name="Type" DisplayName="Type" Direction=Hidden bIsDynamicArray=True CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" End Object Begin Object Name="Name" DisplayName="Name" Direction=Hidden bIsDynamicArray=True CPPType="FName" CustomWidgetName="ElementName" End Object DisplayName="Key" Direction=Hidden bIsDynamicArray=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Index" DisplayName="Index" Direction=Hidden bIsDynamicArray=True CPPType="uint16" DefaultValue="65535" End Object Begin Object Name="ContainerVersion" DisplayName="Container Version" Direction=Hidden bIsDynamicArray=True CPPType="int32" DefaultValue="-1" End Object DisplayName="Cached Index" Direction=Hidden bIsDynamicArray=True CPPType="FCachedRigElement" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.CachedRigElement"' CPPTypeObjectPath="/Script/ControlRig.CachedRigElement" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Key"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Index"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"ContainerVersion"' End Object ResolvedFunctionName="FRigUnit_GetTransform::Execute" NodeTitle="Get Transform" Position=(X=816.000000,Y=1088.000000) NodeColor=(R=0.462745,G=1.000000,B=0.329412,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Item"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Space"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"bInitial"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"Transform"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"CachedIndex"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="GetTransform_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Item" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Space" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInitial" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="CachedIndex" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Key" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Index" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ContainerVersion" End Object End Object Begin Object Name="Item" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_R" CustomWidgetName="ElementName" End Object DisplayName="Item" Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Space" DisplayName="Space" Direction=Input CPPType="EBoneGetterSetterMode" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.EBoneGetterSetterMode"' CPPTypeObjectPath="/Script/ControlRig.EBoneGetterSetterMode" DefaultValue="GlobalSpace" End Object Begin Object Name="bInitial" DisplayName="Initial" Direction=Input CPPType="bool" End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Output CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Output CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Output CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Output CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Begin Object Name="CachedIndex" Begin Object Name="Key" Begin Object Name="Type" DisplayName="Type" Direction=Hidden bIsDynamicArray=True CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" End Object Begin Object Name="Name" DisplayName="Name" Direction=Hidden bIsDynamicArray=True CPPType="FName" CustomWidgetName="ElementName" End Object DisplayName="Key" Direction=Hidden bIsDynamicArray=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Index" DisplayName="Index" Direction=Hidden bIsDynamicArray=True CPPType="uint16" DefaultValue="65535" End Object Begin Object Name="ContainerVersion" DisplayName="Container Version" Direction=Hidden bIsDynamicArray=True CPPType="int32" DefaultValue="-1" End Object DisplayName="Cached Index" Direction=Hidden bIsDynamicArray=True CPPType="FCachedRigElement" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.CachedRigElement"' CPPTypeObjectPath="/Script/ControlRig.CachedRigElement" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Key"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Index"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"ContainerVersion"' End Object ResolvedFunctionName="FRigUnit_GetTransform::Execute" NodeTitle="Get Transform" Position=(X=816.000000,Y=1296.000000) NodeColor=(R=0.462745,G=1.000000,B=0.329412,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Item"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Space"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"bInitial"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"Transform"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"CachedIndex"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMFunctionReferenceNode Name="FootTrace_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Ik Foot Bone" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Offset" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Ik Foot Bone" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_R" CustomWidgetName="ElementName" End Object Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Offset" Begin Object Name="X" DisplayName="X" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Output CPPType="double" DefaultValue="0.000000" End Object Direction=Output bIsExpanded=True CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object ReferencedNodePtr="/Game/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.CR_Mannequin_BasicFootIK:RigVMFunctionLibrary.FootTrace" PreferredPermutationPairs(0)=(Argument="ExecuteContext",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") PreferredPermutationPairs(1)=(Argument="Ik Foot Bone",TypeIndex=109,TypeString="FRigElementKey,/Script/ControlRig.RigElementKey") PreferredPermutationPairs(2)=(Argument="Offset",TypeIndex=38,TypeString="FVector,/Script/CoreUObject.Vector") Position=(X=1920.000000,Y=-544.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Ik Foot Bone"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Offset"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="ModifyTransforms_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ItemToModify" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="0" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Item" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Weight" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMinimum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMaximum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Mode" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WorkData" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="CachedItems" End Object End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="ItemToModify" Begin Object Name="0" Begin Object Name="Item" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="IK_foot_R" CustomWidgetName="ElementName" End Object DisplayName="Item" Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Input CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Input bIsExpanded=True CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Input bIsExpanded=True CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Direction=Input bIsExpanded=True CPPType="FRigUnit_ModifyTransforms_PerItem" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Item"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Transform"' End Object DisplayName="Item to Modify" Direction=Input bIsExpanded=True CPPType="TArray<FRigUnit_ModifyTransforms_PerItem>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"0"' End Object Begin Object Name="Weight" DisplayName="Weight" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="WeightMinimum" DisplayName="Weight Minimum" Direction=Input bIsConstant=True CPPType="float" End Object Begin Object Name="WeightMaximum" DisplayName="Weight Maximum" Direction=Input bIsConstant=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Mode" DisplayName="Mode" Direction=Input bIsConstant=True CPPType="EControlRigModifyBoneMode" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.EControlRigModifyBoneMode"' CPPTypeObjectPath="/Script/ControlRig.EControlRigModifyBoneMode" DefaultValue="AdditiveGlobal" End Object Begin Object Name="WorkData" Begin Object Name="CachedItems" DisplayName="Cached Items" Direction=Hidden bIsDynamicArray=True CPPType="TArray<FCachedRigElement>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.CachedRigElement"' CPPTypeObjectPath="/Script/ControlRig.CachedRigElement" DefaultValue="()" End Object DisplayName="Work Data" Direction=Hidden bIsDynamicArray=True CPPType="FRigUnit_ModifyTransforms_WorkData" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_WorkData"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_WorkData" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"CachedItems"' End Object ResolvedFunctionName="FRigUnit_ModifyTransforms::Execute" NodeTitle="Modify Transforms" Position=(X=1536.000000,Y=448.000000) NodeColor=(R=0.000000,G=0.364706,B=1.000000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"ItemToModify"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Weight"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"WeightMinimum"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"WeightMaximum"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"Mode"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"WorkData"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_2" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=848.000000,Y=688.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_3" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=1360.000000,Y=688.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_4" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_Pelvis" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=2768.000000,Y=-96.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMIfNode Name="If" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Condition" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="True" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="False" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Result" End Object Begin Object Name="Condition" DisplayName="Condition" Direction=Input CPPType="bool" End Object Begin Object Name="True" DisplayName="True" Direction=Input CPPType="double" End Object Begin Object Name="False" DisplayName="False" Direction=Input CPPType="double" End Object Begin Object Name="Result" DisplayName="Result" Direction=Output CPPType="double" End Object PreferredPermutationPairs(0)=(Argument="Condition",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(1)=(Argument="True",TypeIndex=8,TypeString="double,None") PreferredPermutationPairs(2)=(Argument="False",TypeIndex=8,TypeString="double,None") PreferredPermutationPairs(3)=(Argument="Result",TypeIndex=8,TypeString="double,None") Position=(X=2560.000000,Y=112.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Condition"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"True"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"False"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"Result"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_5" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=2192.000000,Y=-16.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_6" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=2196.000000,Y=55.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="MathFloatLess" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="A" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="B" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Result" End Object Begin Object Name="A" DisplayName="A" Direction=Input CPPType="float" End Object Begin Object Name="B" DisplayName="B" Direction=Input CPPType="float" End Object Begin Object Name="Result" DisplayName="Result" Direction=Output CPPType="bool" End Object TemplateNotation="Less::Execute(in A,in B,out Result)" ResolvedFunctionName="FRigUnit_MathFloatLess::Execute" PreferredPermutationPairs(0)=(Argument="A",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(1)=(Argument="B",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(2)=(Argument="Result",TypeIndex=2,TypeString="bool,None") NodeTitle="Less" Position=(X=2368.000000,Y=16.000000) NodeColor=(R=0.050000,G=0.250000,B=0.050000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"A"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"B"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Result"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="ModifyTransforms_1_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ItemToModify" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="0" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Item" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Type" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Name" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Transform" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Rotation" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Translation" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale3D" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="X" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Y" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Z" End Object End Object End Object End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Weight" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMinimum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WeightMaximum" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Mode" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="WorkData" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="CachedItems" End Object End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="ItemToModify" Begin Object Name="0" Begin Object Name="Item" Begin Object Name="Type" DisplayName="Type" Direction=Input CPPType="ERigElementType" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.ERigElementType"' CPPTypeObjectPath="/Script/ControlRig.ERigElementType" DefaultValue="Bone" End Object Begin Object Name="Name" DisplayName="Name" Direction=Input CPPType="FName" DefaultValue="pelvis" CustomWidgetName="ElementName" End Object DisplayName="Item" Direction=Input bIsExpanded=True CPPType="FRigElementKey" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigElementKey"' CPPTypeObjectPath="/Script/ControlRig.RigElementKey" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Type"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Name"' End Object Begin Object Name="Transform" Begin Object Name="Rotation" DisplayName="Rotation" Direction=Input CPPType="FQuat" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Quat"' CPPTypeObjectPath="/Script/CoreUObject.Quat" DefaultValue="(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000)" End Object Begin Object Name="Translation" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="0.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="0.000000" End Object DisplayName="Translation" Direction=Input bIsExpanded=True CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object Begin Object Name="Scale3D" Begin Object Name="X" DisplayName="X" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Y" DisplayName="Y" Direction=Input CPPType="double" DefaultValue="1.000000" End Object Begin Object Name="Z" DisplayName="Z" Direction=Input CPPType="double" DefaultValue="1.000000" End Object DisplayName="Scale 3D" Direction=Input CPPType="FVector" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Vector"' CPPTypeObjectPath="/Script/CoreUObject.Vector" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"X"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Y"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Z"' End Object DisplayName="Transform" Direction=Input bIsExpanded=True CPPType="FTransform" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/CoreUObject.Transform"' CPPTypeObjectPath="/Script/CoreUObject.Transform" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Rotation"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Translation"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"Scale3D"' End Object Direction=Input bIsExpanded=True CPPType="FRigUnit_ModifyTransforms_PerItem" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Item"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Transform"' End Object DisplayName="Item to Modify" Direction=Input bIsExpanded=True CPPType="TArray<FRigUnit_ModifyTransforms_PerItem>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_PerItem"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_PerItem" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"0"' End Object Begin Object Name="Weight" DisplayName="Weight" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="WeightMinimum" DisplayName="Weight Minimum" Direction=Input bIsConstant=True CPPType="float" End Object Begin Object Name="WeightMaximum" DisplayName="Weight Maximum" Direction=Input bIsConstant=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Mode" DisplayName="Mode" Direction=Input bIsConstant=True CPPType="EControlRigModifyBoneMode" CPPTypeObject=/Script/CoreUObject.Enum'"/Script/ControlRig.EControlRigModifyBoneMode"' CPPTypeObjectPath="/Script/ControlRig.EControlRigModifyBoneMode" DefaultValue="AdditiveGlobal" End Object Begin Object Name="WorkData" Begin Object Name="CachedItems" DisplayName="Cached Items" Direction=Hidden bIsDynamicArray=True CPPType="TArray<FCachedRigElement>" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.CachedRigElement"' CPPTypeObjectPath="/Script/ControlRig.CachedRigElement" DefaultValue="()" End Object DisplayName="Work Data" Direction=Hidden bIsDynamicArray=True CPPType="FRigUnit_ModifyTransforms_WorkData" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/ControlRig.RigUnit_ModifyTransforms_WorkData"' CPPTypeObjectPath="/Script/ControlRig.RigUnit_ModifyTransforms_WorkData" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"CachedItems"' End Object ResolvedFunctionName="FRigUnit_ModifyTransforms::Execute" NodeTitle="Modify Transforms" Position=(X=2048.000000,Y=448.000000) NodeColor=(R=0.000000,G=0.364706,B=1.000000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"ItemToModify"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Weight"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"WeightMinimum"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"WeightMaximum"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"Mode"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"WorkData"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_7" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_Pelvis" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=1856.000000,Y=688.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=1664.000000,Y=-544.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_8" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=2304.000000,Y=-544.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMBranchNode Name="Branch" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Condition" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="True" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="False" End Object Begin Object Name="ExecuteContext" DisplayName="Execute" Direction=Input CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" End Object Begin Object Name="Condition" Direction=Input CPPType="bool" End Object Begin Object Name="True" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" End Object Begin Object Name="False" Direction=Output CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" End Object Position=(X=1024.000000,Y=-496.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Condition"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"True"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"False"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ShouldDoIKTrace" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="bool" End Object Position=(X=816.000000,Y=-432.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMRerouteNode Name="RerouteNode_2" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Value" Direction=IO bIsExpanded=True CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object bShowAsFullNode=False PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") Position=(X=800.000000,Y=-464.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_9" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=1280.000000,Y=-304.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_8_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=1536.000000,Y=-304.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMCommentNode Name="EdGraphNode_Comment_0" CommentText="Step 1: If Should Do IK Trace is true, do traces on both feet (using custom trace function) and set the Z offset targets from the trace result. If Should Do IK Trace is false, reset targets to 0." Position=(X=768.000000,Y=-640.000000) Size=(X=1792.000000,Y=448.000000) End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_10" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=1280.000000,Y=-96.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_11" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="ExecuteContext" Direction=IO CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Input CPPType="double" End Object Position=(X=1920.000000,Y=-96.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"ExecuteContext"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="AlphaInterp" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bias" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bMapRange" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="OutRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bClampResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMin" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMax" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInterpResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedIncreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedDecreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Result" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ScaleBiasClamp" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bMapRange" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bClampResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInterpResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="OutRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bias" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMin" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMax" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedIncreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedDecreasing" End Object End Object Begin Object Name="Value" DisplayName="Value" Direction=Input CPPType="float" End Object Begin Object Name="Scale" DisplayName="Scale" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Bias" DisplayName="Bias" Direction=Input CPPType="float" End Object Begin Object Name="bMapRange" DisplayName="Map Range" Direction=Input bIsConstant=True CPPType="bool" End Object Begin Object Name="InRange" Begin Object Name="Min" DisplayName="Min" Direction=Input CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object DisplayName="In Range" Direction=Input CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="OutRange" Begin Object Name="Min" DisplayName="Min" Direction=Input CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object DisplayName="Out Range" Direction=Input CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="bClampResult" DisplayName="Clamp Result" Direction=Input bIsConstant=True CPPType="bool" End Object Begin Object Name="ClampMin" DisplayName="Clamp Min" Direction=Input CPPType="float" End Object Begin Object Name="ClampMax" DisplayName="Clamp Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="bInterpResult" DisplayName="Interp Result" Direction=Input bIsConstant=True CPPType="bool" DefaultValue="true" End Object Begin Object Name="InterpSpeedIncreasing" DisplayName="Interp Speed Increasing" Direction=Input CPPType="float" DefaultValue="15.000000" End Object Begin Object Name="InterpSpeedDecreasing" DisplayName="Interp Speed Decreasing" Direction=Input CPPType="float" DefaultValue="15.000000" End Object Begin Object Name="Result" DisplayName="Result" Direction=Output CPPType="float" End Object Begin Object Name="ScaleBiasClamp" Begin Object Name="bMapRange" DisplayName="Map Range" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="bClampResult" DisplayName="Clamp Result" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="bInterpResult" DisplayName="Interp Result" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="InRange" Begin Object Name="Min" DisplayName="Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object DisplayName="In Range" Direction=Hidden bIsDynamicArray=True CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="OutRange" Begin Object Name="Min" DisplayName="Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object DisplayName="Out Range" Direction=Hidden bIsDynamicArray=True CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="Scale" DisplayName="Scale" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Bias" DisplayName="Bias" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="ClampMin" DisplayName="Clamp Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="ClampMax" DisplayName="Clamp Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="InterpSpeedIncreasing" DisplayName="Interp Speed Increasing" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="10.000000" End Object Begin Object Name="InterpSpeedDecreasing" DisplayName="Interp Speed Decreasing" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="10.000000" End Object DisplayName="Scale Bias Clamp" Direction=Hidden bIsDynamicArray=True CPPType="FInputScaleBiasClamp" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputScaleBiasClamp"' CPPTypeObjectPath="/Script/Engine.InputScaleBiasClamp" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"bMapRange"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"bClampResult"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"bInterpResult"' SubPins(3)=/Script/RigVMDeveloper.RigVMPin'"InRange"' SubPins(4)=/Script/RigVMDeveloper.RigVMPin'"OutRange"' SubPins(5)=/Script/RigVMDeveloper.RigVMPin'"Scale"' SubPins(6)=/Script/RigVMDeveloper.RigVMPin'"Bias"' SubPins(7)=/Script/RigVMDeveloper.RigVMPin'"ClampMin"' SubPins(8)=/Script/RigVMDeveloper.RigVMPin'"ClampMax"' SubPins(9)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedIncreasing"' SubPins(10)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedDecreasing"' End Object TemplateNotation="AlphaInterp::Execute(in Value,in Scale,in Bias,in bMapRange,in InRange,in OutRange,in bClampResult,in ClampMin,in ClampMax,in bInterpResult,in InterpSpeedIncreasing,in InterpSpeedDecreasing,out Result)" ResolvedFunctionName="FRigUnit_AlphaInterp::Execute" PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(1)=(Argument="Scale",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(2)=(Argument="Bias",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(3)=(Argument="bMapRange",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(4)=(Argument="InRange",TypeIndex=472,TypeString="FInputRange,/Script/Engine.InputRange") PreferredPermutationPairs(5)=(Argument="OutRange",TypeIndex=472,TypeString="FInputRange,/Script/Engine.InputRange") PreferredPermutationPairs(6)=(Argument="bClampResult",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(7)=(Argument="ClampMin",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(8)=(Argument="ClampMax",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(9)=(Argument="bInterpResult",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(10)=(Argument="InterpSpeedIncreasing",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(11)=(Argument="InterpSpeedDecreasing",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(12)=(Argument="Result",TypeIndex=5,TypeString="float,None") NodeTitle="Alpha Interpolate" Position=(X=1024.000000,Y=-16.000000) NodeColor=(R=0.250000,G=0.050000,B=0.050000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Scale"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Bias"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"bMapRange"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"InRange"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"OutRange"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"bClampResult"' Pins(7)=/Script/RigVMDeveloper.RigVMPin'"ClampMin"' Pins(8)=/Script/RigVMDeveloper.RigVMPin'"ClampMax"' Pins(9)=/Script/RigVMDeveloper.RigVMPin'"bInterpResult"' Pins(10)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedIncreasing"' Pins(11)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedDecreasing"' Pins(12)=/Script/RigVMDeveloper.RigVMPin'"Result"' Pins(13)=/Script/RigVMDeveloper.RigVMPin'"ScaleBiasClamp"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMRerouteNode Name="RerouteNode_3" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Value" Direction=IO bIsExpanded=True CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object bShowAsFullNode=False PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") Position=(X=784.000000,Y=-48.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMUnitNode Name="AlphaInterp_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bias" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bMapRange" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="OutRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bClampResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMin" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMax" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInterpResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedIncreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedDecreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Result" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ScaleBiasClamp" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bMapRange" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bClampResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="bInterpResult" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="OutRange" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Min" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Max" End Object End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Scale" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Bias" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMin" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="ClampMax" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedIncreasing" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="InterpSpeedDecreasing" End Object End Object Begin Object Name="Value" DisplayName="Value" Direction=Input CPPType="float" End Object Begin Object Name="Scale" DisplayName="Scale" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Bias" DisplayName="Bias" Direction=Input CPPType="float" End Object Begin Object Name="bMapRange" DisplayName="Map Range" Direction=Input bIsConstant=True CPPType="bool" End Object Begin Object Name="InRange" Begin Object Name="Min" DisplayName="Min" Direction=Input CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object DisplayName="In Range" Direction=Input CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="OutRange" Begin Object Name="Min" DisplayName="Min" Direction=Input CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object DisplayName="Out Range" Direction=Input CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="bClampResult" DisplayName="Clamp Result" Direction=Input bIsConstant=True CPPType="bool" End Object Begin Object Name="ClampMin" DisplayName="Clamp Min" Direction=Input CPPType="float" End Object Begin Object Name="ClampMax" DisplayName="Clamp Max" Direction=Input CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="bInterpResult" DisplayName="Interp Result" Direction=Input bIsConstant=True CPPType="bool" DefaultValue="true" End Object Begin Object Name="InterpSpeedIncreasing" DisplayName="Interp Speed Increasing" Direction=Input CPPType="float" DefaultValue="15.000000" End Object Begin Object Name="InterpSpeedDecreasing" DisplayName="Interp Speed Decreasing" Direction=Input CPPType="float" DefaultValue="15.000000" End Object Begin Object Name="Result" DisplayName="Result" Direction=Output CPPType="float" End Object Begin Object Name="ScaleBiasClamp" Begin Object Name="bMapRange" DisplayName="Map Range" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="bClampResult" DisplayName="Clamp Result" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="bInterpResult" DisplayName="Interp Result" Direction=Hidden bIsDynamicArray=True CPPType="bool" End Object Begin Object Name="InRange" Begin Object Name="Min" DisplayName="Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object DisplayName="In Range" Direction=Hidden bIsDynamicArray=True CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="OutRange" Begin Object Name="Min" DisplayName="Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="Max" DisplayName="Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object DisplayName="Out Range" Direction=Hidden bIsDynamicArray=True CPPType="FInputRange" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputRange"' CPPTypeObjectPath="/Script/Engine.InputRange" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"Min"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"Max"' End Object Begin Object Name="Scale" DisplayName="Scale" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="Bias" DisplayName="Bias" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="ClampMin" DisplayName="Clamp Min" Direction=Hidden bIsDynamicArray=True CPPType="float" End Object Begin Object Name="ClampMax" DisplayName="Clamp Max" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="1.000000" End Object Begin Object Name="InterpSpeedIncreasing" DisplayName="Interp Speed Increasing" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="10.000000" End Object Begin Object Name="InterpSpeedDecreasing" DisplayName="Interp Speed Decreasing" Direction=Hidden bIsDynamicArray=True CPPType="float" DefaultValue="10.000000" End Object DisplayName="Scale Bias Clamp" Direction=Hidden bIsDynamicArray=True CPPType="FInputScaleBiasClamp" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/Engine.InputScaleBiasClamp"' CPPTypeObjectPath="/Script/Engine.InputScaleBiasClamp" SubPins(0)=/Script/RigVMDeveloper.RigVMPin'"bMapRange"' SubPins(1)=/Script/RigVMDeveloper.RigVMPin'"bClampResult"' SubPins(2)=/Script/RigVMDeveloper.RigVMPin'"bInterpResult"' SubPins(3)=/Script/RigVMDeveloper.RigVMPin'"InRange"' SubPins(4)=/Script/RigVMDeveloper.RigVMPin'"OutRange"' SubPins(5)=/Script/RigVMDeveloper.RigVMPin'"Scale"' SubPins(6)=/Script/RigVMDeveloper.RigVMPin'"Bias"' SubPins(7)=/Script/RigVMDeveloper.RigVMPin'"ClampMin"' SubPins(8)=/Script/RigVMDeveloper.RigVMPin'"ClampMax"' SubPins(9)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedIncreasing"' SubPins(10)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedDecreasing"' End Object TemplateNotation="AlphaInterp::Execute(in Value,in Scale,in Bias,in bMapRange,in InRange,in OutRange,in bClampResult,in ClampMin,in ClampMax,in bInterpResult,in InterpSpeedIncreasing,in InterpSpeedDecreasing,out Result)" ResolvedFunctionName="FRigUnit_AlphaInterp::Execute" PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(1)=(Argument="Scale",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(2)=(Argument="Bias",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(3)=(Argument="bMapRange",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(4)=(Argument="InRange",TypeIndex=472,TypeString="FInputRange,/Script/Engine.InputRange") PreferredPermutationPairs(5)=(Argument="OutRange",TypeIndex=472,TypeString="FInputRange,/Script/Engine.InputRange") PreferredPermutationPairs(6)=(Argument="bClampResult",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(7)=(Argument="ClampMin",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(8)=(Argument="ClampMax",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(9)=(Argument="bInterpResult",TypeIndex=2,TypeString="bool,None") PreferredPermutationPairs(10)=(Argument="InterpSpeedIncreasing",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(11)=(Argument="InterpSpeedDecreasing",TypeIndex=5,TypeString="float,None") PreferredPermutationPairs(12)=(Argument="Result",TypeIndex=5,TypeString="float,None") NodeTitle="Alpha Interpolate" Position=(X=1664.000000,Y=-16.000000) NodeColor=(R=0.250000,G=0.050000,B=0.050000,A=1.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Scale"' Pins(2)=/Script/RigVMDeveloper.RigVMPin'"Bias"' Pins(3)=/Script/RigVMDeveloper.RigVMPin'"bMapRange"' Pins(4)=/Script/RigVMDeveloper.RigVMPin'"InRange"' Pins(5)=/Script/RigVMDeveloper.RigVMPin'"OutRange"' Pins(6)=/Script/RigVMDeveloper.RigVMPin'"bClampResult"' Pins(7)=/Script/RigVMDeveloper.RigVMPin'"ClampMin"' Pins(8)=/Script/RigVMDeveloper.RigVMPin'"ClampMax"' Pins(9)=/Script/RigVMDeveloper.RigVMPin'"bInterpResult"' Pins(10)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedIncreasing"' Pins(11)=/Script/RigVMDeveloper.RigVMPin'"InterpSpeedDecreasing"' Pins(12)=/Script/RigVMDeveloper.RigVMPin'"Result"' Pins(13)=/Script/RigVMDeveloper.RigVMPin'"ScaleBiasClamp"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_5_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=2368.000000,Y=128.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_6_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=2368.000000,Y=208.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMCommentNode Name="EdGraphNode_Comment_1" CommentText="Step 2: Interpolate the Z offsets toward their target values." Position=(X=768.000000,Y=-160.000000) Size=(X=1360.000000,Y=512.000000) End Object Begin Object Class=/Script/RigVMDeveloper.RigVMCommentNode Name="EdGraphNode_Comment_2" CommentText="Step 4: Add the interpolated Z offsets to the IK foot bones and pelvis. This will move them up or down." Position=(X=768.000000,Y=384.000000) Size=(X=1616.000000,Y=512.000000) End Object Begin Object Class=/Script/RigVMDeveloper.RigVMRerouteNode Name="RerouteNode" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Value" Direction=IO bIsExpanded=True CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object bShowAsFullNode=False PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") Position=(X=784.000000,Y=480.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMCommentNode Name="EdGraphNode_Comment_3" CommentText="Step 5: Use a Full Body IK node to solve the IK, and use the IK foot bones as the effector targets for each foot." Position=(X=768.000000,Y=928.000000) Size=(X=768.000000,Y=864.000000) End Object Begin Object Class=/Script/RigVMDeveloper.RigVMRerouteNode Name="RerouteNode_1" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Value" Direction=IO bIsExpanded=True CPPType="FRigVMExecuteContext" CPPTypeObject=/Script/CoreUObject.ScriptStruct'"/Script/RigVM.RigVMExecuteContext"' CPPTypeObjectPath="/Script/RigVM.RigVMExecuteContext" DefaultValue="()" End Object bShowAsFullNode=False PreferredPermutationPairs(0)=(Argument="Value",TypeIndex=0,TypeString="FRigVMExecuteContext,/Script/RigVM.RigVMExecuteContext") Position=(X=784.000000,Y=1056.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_12" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_L_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=816.000000,Y=-32.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMVariableNode Name="VariableNode_13" Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Variable" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMPin Name="Value" End Object Begin Object Name="Variable" Direction=Hidden CPPType="FName" DefaultValue="ZOffset_R_Target" CustomWidgetName="VariableName" End Object Begin Object Name="Value" Direction=Output CPPType="double" End Object Position=(X=1456.000000,Y=-32.000000) Pins(0)=/Script/RigVMDeveloper.RigVMPin'"Variable"' Pins(1)=/Script/RigVMDeveloper.RigVMPin'"Value"' End Object Begin Object Class=/Script/RigVMDeveloper.RigVMCommentNode Name="EdGraphNode_Comment_4" CommentText="Step 3: Use the lowest foot offset for the pelvis to prevent overextension." Position=(X=2160.000000,Y=-160.000000) Size=(X=800.000000,Y=512.000000) End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_0" SourcePinPath="BeginExecution.ExecuteContext" TargetPinPath="SequenceExecution.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_15" SourcePinPath="GetTransform_1.Transform" TargetPinPath="PBIK.Effectors.1.Transform" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_5" SourcePinPath="GetTransform.Transform" TargetPinPath="PBIK.Effectors.0.Transform" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_11" SourcePinPath="ModifyTransforms.ExecuteContext" TargetPinPath="ModifyTransforms_1.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_12" SourcePinPath="VariableNode_2.Value" TargetPinPath="ModifyTransforms.ItemToModify.0.Transform.Translation.Z" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_13" SourcePinPath="VariableNode_3.Value" TargetPinPath="ModifyTransforms_1.ItemToModify.0.Transform.Translation.Z" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_16" SourcePinPath="If.Result" TargetPinPath="VariableNode_4.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_17" SourcePinPath="VariableNode_5.Value" TargetPinPath="MathFloatLess.A" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_18" SourcePinPath="VariableNode_6.Value" TargetPinPath="MathFloatLess.B" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_19" SourcePinPath="MathFloatLess.Result" TargetPinPath="If.Condition" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_23" SourcePinPath="ModifyTransforms_1.ExecuteContext" TargetPinPath="ModifyTransforms_1_1.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_24" SourcePinPath="VariableNode_7.Value" TargetPinPath="ModifyTransforms_1_1.ItemToModify.0.Transform.Translation.Z" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_2" SourcePinPath="FootTrace.ExecuteContext" TargetPinPath="VariableNode.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_3" SourcePinPath="FootTrace.Offset.Z" TargetPinPath="VariableNode.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_4" SourcePinPath="VariableNode.ExecuteContext" TargetPinPath="FootTrace_1.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_6" SourcePinPath="FootTrace_1.Offset.Z" TargetPinPath="VariableNode_8.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_7" SourcePinPath="FootTrace_1.ExecuteContext" TargetPinPath="VariableNode_8.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_9" SourcePinPath="Branch.True" TargetPinPath="FootTrace.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_14" SourcePinPath="RerouteNode_2.Value" TargetPinPath="Branch.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_20" SourcePinPath="SequenceExecution.A" TargetPinPath="RerouteNode_2.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_21" SourcePinPath="Branch.False" TargetPinPath="VariableNode_9.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_22" SourcePinPath="VariableNode_9.ExecuteContext" TargetPinPath="VariableNode_8_1.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_1" SourcePinPath="VariableNode_1.Value" TargetPinPath="Branch.Condition" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_30" SourcePinPath="AlphaInterp.Result" TargetPinPath="VariableNode_10.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_32" SourcePinPath="RerouteNode_3.Value" TargetPinPath="VariableNode_10.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_33" SourcePinPath="SequenceExecution.B" TargetPinPath="RerouteNode_3.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_34" SourcePinPath="VariableNode_10.ExecuteContext" TargetPinPath="VariableNode_11.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_35" SourcePinPath="AlphaInterp_1.Result" TargetPinPath="VariableNode_11.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_36" SourcePinPath="VariableNode_11.ExecuteContext" TargetPinPath="VariableNode_4.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_37" SourcePinPath="VariableNode_5_1.Value" TargetPinPath="If.True" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_38" SourcePinPath="VariableNode_6_1.Value" TargetPinPath="If.False" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_39" SourcePinPath="RerouteNode.Value" TargetPinPath="ModifyTransforms.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_40" SourcePinPath="SequenceExecution.C" TargetPinPath="RerouteNode.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_41" SourcePinPath="RerouteNode_1.Value" TargetPinPath="PBIK.ExecuteContext" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_42" SourcePinPath="SequenceExecution.D" TargetPinPath="RerouteNode_1.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_43" SourcePinPath="VariableNode_12.Value" TargetPinPath="AlphaInterp.Value" End Object Begin Object Class=/Script/RigVMDeveloper.RigVMLink Name="RigVMLink_44" SourcePinPath="VariableNode_13.Value" TargetPinPath="AlphaInterp_1.Value" End Object

Click the button above, it will automatically copy blueprint in your clipboard. Then in Unreal Engine blueprint editor, paste it with ctrl + v