C# Class RootMotion.FinalIK.FBIKChain

Show file Open project: Alx666/ProjectPhoenix Class Usage Examples

Public Properties

Property Type Description
bendConstraint RootMotion.FinalIK.IKConstraintBend
childConstraints ChildConstraint[]
children int[]
nodes RootMotion.FinalIK.IKSolver.Node[]
pushSmoothing Smoothing
reachSmoothing Smoothing

Public Methods

Method Description
FBIKChain ( ) : UnityEngine
FBIKChain ( float pin, float pull ) : UnityEngine
ForwardReach ( Vector3 position ) : void
Initiate ( IKSolver solver, FBIKChain chain ) : void
IsValid ( Warning logger = null ) : bool
Push ( FBIKChain chain ) : Vector3
Reach ( FBIKChain chain ) : void
ReadPose ( FBIKChain chain, bool fullBody ) : void
SetNodes ( ) : void
SolveConstraintSystems ( FBIKChain chain ) : void
SolveTrigonometric ( FBIKChain chain, bool calculateBendDirection = false ) : void
Stage1 ( FBIKChain chain ) : void
Stage2 ( Vector3 position, int iterations, FBIKChain chain ) : void

Protected Methods

Method Description
GetDirToBendPoint ( Vector3 direction, Vector3 bendDirection, float directionMagnitude ) : Vector3

Private Methods

Method Description
BackwardReach ( Vector3 position ) : void
CalculateBoneLengths ( FBIKChain chain ) : void
SolveChildConstraints ( ) : void
SolveLinearConstraint ( IKSolver node1, IKSolver node2, float crossFade, float distance ) : void

Method Details

FBIKChain() public method

public FBIKChain ( ) : UnityEngine
return UnityEngine

FBIKChain() public method

public FBIKChain ( float pin, float pull ) : UnityEngine
pin float
pull float
return UnityEngine

ForwardReach() public method

public ForwardReach ( Vector3 position ) : void
position Vector3
return void

GetDirToBendPoint() protected method

protected GetDirToBendPoint ( Vector3 direction, Vector3 bendDirection, float directionMagnitude ) : Vector3
direction Vector3
bendDirection Vector3
directionMagnitude float
return Vector3

Initiate() public method

public Initiate ( IKSolver solver, FBIKChain chain ) : void
solver IKSolver
chain FBIKChain
return void

IsValid() public method

public IsValid ( Warning logger = null ) : bool
logger Warning
return bool

Push() public method

public Push ( FBIKChain chain ) : Vector3
chain FBIKChain
return Vector3

Reach() public method

public Reach ( FBIKChain chain ) : void
chain FBIKChain
return void

ReadPose() public method

public ReadPose ( FBIKChain chain, bool fullBody ) : void
chain FBIKChain
fullBody bool
return void

SetNodes() public method

public SetNodes ( ) : void
return void

SolveConstraintSystems() public method

public SolveConstraintSystems ( FBIKChain chain ) : void
chain FBIKChain
return void

SolveTrigonometric() public method

public SolveTrigonometric ( FBIKChain chain, bool calculateBendDirection = false ) : void
chain FBIKChain
calculateBendDirection bool
return void

Stage1() public method

public Stage1 ( FBIKChain chain ) : void
chain FBIKChain
return void

Stage2() public method

public Stage2 ( Vector3 position, int iterations, FBIKChain chain ) : void
position Vector3
iterations int
chain FBIKChain
return void

Property Details

bendConstraint public property

Gets the bend constraint (if this chain has 3 segments).
public IKConstraintBend,RootMotion.FinalIK bendConstraint
return RootMotion.FinalIK.IKConstraintBend

childConstraints public property

The child constraints are used for example for fixing the distance between left upper arm and right upper arm
public ChildConstraint[] childConstraints
return ChildConstraint[]

children public property

The child chains.
public int[] children
return int[]

nodes public property

The nodes in this chain.
public IKSolver.Node[],RootMotion.FinalIK nodes
return RootMotion.FinalIK.IKSolver.Node[]

pushSmoothing public property

Smoothing the effect of the Push.
public Smoothing pushSmoothing
return Smoothing

reachSmoothing public property

Smoothing the effect of the Reach with the expense of some accuracy.
public Smoothing reachSmoothing
return Smoothing