C# Class RootMotion.FinalIK.IKSolver

显示文件 Open project: Alx666/ProjectPhoenix Class Usage Examples

Public Properties

Property Type Description
OnPostInitiate UpdateDelegate
OnPostUpdate UpdateDelegate
OnPreInitiate UpdateDelegate
OnPreUpdate UpdateDelegate

Protected Properties

Property Type Description
firstInitiation bool

Public Methods

Method Description
ContainsDuplicateBone ( Bone bones ) : Transform

Checks if an array of objects contains any duplicates.

FixTransforms ( ) : void

Fixes all the Transforms used by the solver to their initial state.

GetIKPosition ( ) : Vector3

Gets the %IK position. NOTE: You are welcome to read IKPosition directly, this method is here only to match the Unity's built in %IK API.

GetIKPositionWeight ( ) : float

Gets the %IK position weight. NOTE: You are welcome to read IKPositionWeight directly, this method is here only to match the Unity's built in %IK API.

GetPoint ( Transform transform ) : IKSolver.Point

Gets the point with the specified Transform.

GetPoints ( ) : RootMotion.FinalIK.IKSolver.Point[]

Gets all the points used by the solver.

GetRoot ( ) : Transform

Gets the root Transform.

HierarchyIsValid ( IKSolver bones ) : bool
Initiate ( Transform root ) : void

Initiate the solver with specified root Transform. Use only if this %IKSolver is not a member of an %IK component.

IsValid ( bool log ) : bool

Determines whether this instance is valid or not. If log == true, will log a warning message in case of an invalid solver.

SetIKPosition ( Vector3 position ) : void

Sets the %IK position. NOTE: You are welcome to set IKPosition directly, this method is here only to match the Unity's built in %IK API.

SetIKPositionWeight ( float weight ) : void

Sets the %IK position weight. NOTE: You are welcome to set IKPositionWeight directly, this method is here only to match the Unity's built in %IK API.

StoreDefaultLocalState ( ) : void

Stores the default local state for the bones used by the solver.

Update ( ) : void

Updates the %IK solver. Use only if this %IKSolver is not a member of an %IK component or the %IK component has been disabled and you intend to manually control the updating.

Protected Methods

Method Description
LogWarning ( string message ) : void
OnInitiate ( ) : void
OnUpdate ( ) : void

Method Details

ContainsDuplicateBone() public static method

Checks if an array of objects contains any duplicates.
public static ContainsDuplicateBone ( Bone bones ) : Transform
bones Bone
return UnityEngine.Transform

FixTransforms() public abstract method

Fixes all the Transforms used by the solver to their initial state.
public abstract FixTransforms ( ) : void
return void

GetIKPosition() public method

Gets the %IK position. NOTE: You are welcome to read IKPosition directly, this method is here only to match the Unity's built in %IK API.
public GetIKPosition ( ) : Vector3
return UnityEngine.Vector3

GetIKPositionWeight() public method

Gets the %IK position weight. NOTE: You are welcome to read IKPositionWeight directly, this method is here only to match the Unity's built in %IK API.
public GetIKPositionWeight ( ) : float
return float

GetPoint() public abstract method

Gets the point with the specified Transform.
public abstract GetPoint ( Transform transform ) : IKSolver.Point
transform UnityEngine.Transform
return IKSolver.Point

GetPoints() public abstract method

Gets all the points used by the solver.
public abstract GetPoints ( ) : RootMotion.FinalIK.IKSolver.Point[]
return RootMotion.FinalIK.IKSolver.Point[]

GetRoot() public method

Gets the root Transform.
public GetRoot ( ) : Transform
return UnityEngine.Transform

HierarchyIsValid() public static method

public static HierarchyIsValid ( IKSolver bones ) : bool
bones IKSolver
return bool

Initiate() public method

Initiate the solver with specified root Transform. Use only if this %IKSolver is not a member of an %IK component.
public Initiate ( Transform root ) : void
root UnityEngine.Transform
return void

IsValid() public abstract method

Determines whether this instance is valid or not. If log == true, will log a warning message in case of an invalid solver.
public abstract IsValid ( bool log ) : bool
log bool
return bool

LogWarning() protected method

protected LogWarning ( string message ) : void
message string
return void

OnInitiate() protected abstract method

protected abstract OnInitiate ( ) : void
return void

OnUpdate() protected abstract method

protected abstract OnUpdate ( ) : void
return void

SetIKPosition() public method

Sets the %IK position. NOTE: You are welcome to set IKPosition directly, this method is here only to match the Unity's built in %IK API.
public SetIKPosition ( Vector3 position ) : void
position UnityEngine.Vector3
return void

SetIKPositionWeight() public method

Sets the %IK position weight. NOTE: You are welcome to set IKPositionWeight directly, this method is here only to match the Unity's built in %IK API.
public SetIKPositionWeight ( float weight ) : void
weight float
return void

StoreDefaultLocalState() public abstract method

Stores the default local state for the bones used by the solver.
public abstract StoreDefaultLocalState ( ) : void
return void

Update() public method

Updates the %IK solver. Use only if this %IKSolver is not a member of an %IK component or the %IK component has been disabled and you intend to manually control the updating.
public Update ( ) : void
return void

Property Details

OnPostInitiate public_oe property

Called after initiating the solver.
public UpdateDelegate OnPostInitiate
return UpdateDelegate

OnPostUpdate public_oe property

Called after writing the solved pose
public UpdateDelegate OnPostUpdate
return UpdateDelegate

OnPreInitiate public_oe property

Called before initiating the solver.
public UpdateDelegate OnPreInitiate
return UpdateDelegate

OnPreUpdate public_oe property

Called before updating.
public UpdateDelegate OnPreUpdate
return UpdateDelegate

firstInitiation protected_oe property

protected bool firstInitiation
return bool