Navigation
API > API/Plugins > API/Plugins/IKRig > API/Plugins/IKRig/Rig > API/Plugins/IKRig/Rig/Solvers
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UIKRigSolver
- UIKRig_BodyMover
- UIKRig_LimbSolver
- UIKRig_PoleSolver
- UIKRig_SetTransform
- UIKRigFBIKSolver
References
| Module | IKRig |
| Header | /Engine/Plugins/Animation/IKRig/Source/IKRig/Public/Rig/Solvers/IKRigSolver.h |
| Include | #include "Rig/Solvers/IKRigSolver.h" |
Syntax
UCLASS (Abstract, HideCategories=UObject)
class UIKRigSolver : public UObject
Remarks
This is the base class for creating your own solver type that integrates into the IK Rig framework/editor.
Constructors
| Type | Name | Description | |
|---|---|---|---|
UIKRigSolver () |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddBoneSetting
(
const FName& BoneName |
Override to support ADDING PER-BONE settings for this solver | |
| void | AddGoal
(
const UIKRigEffectorGoal& NewGoal |
Override to support ADDING a new goal to custom solver | |
| void | DrawBoneSettings
(
const FName& BoneName, |
Todo override to draw custom per-bone settings in the editor viewport | |
| UObject * | GetBoneSetting
(
const FName& BoneName |
Override to support supplying per-bone settings to outside systems for editing/UI NOTE: This must be overriden on solvers that use bone settings. | |
| void | GetBonesWithSettings
(
TSet< FName >& OutBonesWithSettings |
Override to support telling outside systems which bones this solver has setting for. | |
| FName | GetEndBone () |
Override to support GETTING END BONE of the solver | |
| UObject * | GetGoalSettings
(
const FName& GoalName |
Override to support supplying goals settings specific to this solver to outside systems for editing/UI | |
| FText | GetNiceName () |
Override to give your solver a nice name to display in the UI | |
| FName | GetRootBone () |
If solver requires a root bone, then override this to return it. | |
| bool | GetWarningMessage
(
FText& OutWarningMessage |
Override to provide warning to user during setup of any missing components. | |
| void | Initialize
(
const FIKRigSkeleton& IKRigSkeleton |
Override to setup internal data based on ref pose | |
| bool | IsBoneAffectedBySolver
(
const FName& BoneName, |
Return true if the supplied Bone is affected by this solver - this provides UI feedback for user | |
| bool | IsEnabled () |
Get if this solver is enabled | |
| bool | IsGoalConnected
(
const FName& GoalName |
Override to support QUERY for a connected goal | |
| FIKRigSolverModified & | |||
| void | RemoveBoneSetting
(
const FName& BoneName |
Override to support ADDING PER-BONE settings for this solver | |
| void | RemoveGoal
(
const FName& GoalName |
Override to support REMOVING a goal from custom solver | |
| void | RenameGoal
(
const FName& OldName, |
Override to support RENAMING an existing goal | |
| bool | Override and return true if this solver requires an end bone to be specified | ||
| bool | |||
| void | SetEnabled
(
const bool bEnabled |
Turn solver on/off (will be skipped during execution if disabled) | |
| void | SetEndBone
(
const FName& EndBoneName |
Override to support SETTING END BONE for the solver | |
| void | SetGoalBone
(
const FName& GoalName, |
Override to support CHANGING BONE for an existing goal | |
| void | SetRootBone
(
const FName& RootBoneName |
Override to support SETTING ROOT BONE for the solver | |
| void | Solve
(
FIKRigSkeleton& IKRigSkeleton, |
Override Solve() to evaluate new output pose (InOutGlobalTransform) | |
| void | UpdateSolverSettings
(
UIKRigSolver* InSettings |
Override to support RECEIVING modified solver settings from outside systems for editing/UI. | |
| bool | Override to tell systems if this solver supports per-bone settings |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | PostLoad () |
UObject interface | |
| void | PostTransacted
(
const FTransactionObjectEvent& TransactionEvent |
Called after the object has been transacted in some way. |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FIKRigSolverModified | Callback whenever this solver is edited |