Navigation
API > API/Plugins > API/Plugins/ControlRig
System that tracks and evaluates control rig control parameters and spaces.
This system is relatively complex, and implements the following behavior:
Instantiation:
- Initializes rigs by ensuring the anim instance set up and bound to the correct rig
- Tracks contriguting control rig parameters by rg
- Caches pre-animated state
- Assigns accumulation indices for each parameter
- Caches initial values if necessary
Evaluation:
- (GameThread) Evaluates any base rigs by calling SetDoNotKey(true) on the section, and updating the control rig track in the anim instance with its weight (if active)
- (GameThread) Evaluates constraints
- (Async) Evaluates space channels
- (Async) Accumulates all control rig parameters and spaces into a single parameter buffer for each control rig
- (GameThread) Applies the control rig parameter buffer to the rig
- (Async) Resets the 'do not key' states on the sections
| Name | UMovieSceneControlRigParameterEvaluatorSystem |
| Type | class |
| Header File | /Engine/Plugins/Animation/ControlRig/Source/ControlRig/Public/Sequencer/MovieSceneControlRigSystem.h |
| Include Path | #include "Sequencer/MovieSceneControlRigSystem.h" |
Syntax
UCLASS (MinimalAPI)
class UMovieSceneControlRigParameterEvaluatorSystem : public UMovieSceneEntitySystem
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMovieSceneEntitySystem → UMovieSceneControlRigParameterEvaluatorSystem
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UMovieSceneControlRigParameterEvaluatorSystem
(
const FObjectInitializer& ObjInit |
Sequencer/MovieSceneControlRigSystem.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~UMovieSceneControlRigParameterEvaluatorSystem() |
Sequencer/MovieSceneControlRigSystem.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ControlRigParameterStorage | TSharedPtr< UE::MovieScene::FPreAnimatedControlRigParameterStorage > | Pre-animated state storage for all control rig parameters | Sequencer/MovieSceneControlRigSystem.h | |
| ControlRigStorage | TSharedPtr< UE::MovieScene::FPreAnimatedControlRigStorage > | Pre-animated state storage for control rigs themselves (stores which rigs are currently being animated along with their anim instance and binding) | Sequencer/MovieSceneControlRigSystem.h | |
| DoubleBlenderSystem | TObjectPtr< UMovieScenePiecewiseDoubleBlenderSystem > | Cached blender system used for blending parameters | Sequencer/MovieSceneControlRigSystem.h | |
| ParameterGroupingKey | UE::MovieScene::FEntityGroupingPolicyKey | Registered key for the grouping policy that groups control rig parameters together by name and type | Sequencer/MovieSceneControlRigSystem.h | |
| PreCompileHandles | TArray< FDelegateHandle > | Sequencer/MovieSceneControlRigSystem.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AccumulatedValues | UE::MovieScene::FAccumulatedControlRigValues | Persistent accumulation buffer for all known rig values. | Sequencer/MovieSceneControlRigSystem.h | |
| ControlRigParameterTracker | UE::MovieScene::TOverlappingEntityTracker< UE::MovieScene::FAnimatedControlRigParameterInfo, UE::MovieScene::FEntityGroupID > | Tracker that operates on group IDs to initialize blend outputs for each control rig parameter type | Sequencer/MovieSceneControlRigSystem.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
const UE::MovieScene::FControlRigParameterBuffer * FindParameters
(
UMovieSceneControlRigParameterTrack* Track |
Sequencer/MovieSceneControlRigSystem.h | ||
UControlRig * GetRigFromTrack
(
UMovieSceneControlRigParameterTrack* Track |
Sequencer/MovieSceneControlRigSystem.h |