Overview
Movement Set Settings allows you to choose different states layer settings for different implementation. In here we only discuss the default implementation(GMS_AnimLayer_States_DefaultLocomotion), it's a Lyra style locomotion with many improvements.
The companion project's /Game/GenericGame/MovementSystem/Core/AnimLayers/ABPT_GMS_Layer_States_Default is the default States layer Blueprint template; its setting class is GMS_AnimLayerSetting_States_Default. For an example, open the Default Movement Set in /Game/GenericDemo/GMS/Human/MS_Mannequin_PoseStack_Lyra: its States setting references the States_Manny_Unarmed_Stand Data Asset.
Configuration order
- Select the Movement Set to edit in the Movement Definition. Choose the default States layer setting, or turn off
UseInstancedStatesSettingand reference an existing States setting asset. - Configure the animation data needed for Idle/IdleBreaks, Jump/Fall, Land, Turn, and Lean.
- Add MovingStates entries for the Movement State tags you use. Check the ViewDirection and VelocityDirection Start data, plus Cycle, Stop, and Pivot for each entry.
- Save the setting, switch to the Movement Set on the character, and check its state tags, animation layer, and transitions.
Idle and Idle Breaks
Idle/IdleBreaks contains the idle setup. Configure the base idle first, then add idle breaks as needed. Check skeleton compatibility and the blend into and out of idle.
Jumping and Falling
Jump/Fall and Land organize the jump, falling, and landing animations. Check the transitions on the character; if the Additive layer also provides landing motion, check how the two settings work together.
Turn in Place
GMS supports both delayed and non-delayed turn-in-place.
For current turn-in-place solution, it can be animation to catch up actor rotation, or animation driving the actor rotation via curves (depends on your movement control setting).
note
This feature requires you to EnableOffsetRootBoneRotationin anim general settings. You should alsoEnableRotationWhenNotMoving in your movement state settings.
note
For Turn-In-Place animation sequences, you should enable RootMotion,ForceRootLock and apply AM_TurnYaw animation modifiers to sequence.
Video Tutorials
The following videos are outdated but still useful.
note
Starting from GMSV1.3, there is no longer a distinction between Montage/Graph turn-in-place, delayed/non-delayed is automatically selected based on the current control settings and the activation delay time.
Lean Animations
Here you can specify a BlenderSpace1D/2D and set the max/min lean angle.
GMS will use the LeanState (Vector2D) of the main anim blueprint to multiply with the max/min lean angle you specify, and use the result after speed scaling (a value of -1 to 1) to drive the horizontal/vertical values in the blend space.
Moving States Animations
In MovingStates, use the matching Gameplay Tag for each Movement State and configure its Start, Cycle, Stop, and Pivot data. Start is configured separately for ViewDirection and VelocityDirection. Switch gait and rotation mode on the character to check the selected animation.
Note
You must contain atleast 1 moving state to make gms works properly.
Pivot Animations
Pivot provides a transition when the character changes direction while moving. Configure Pivot data for the relevant Movement State and test direction changes in game. If it does not play, check the actual movement state, input, and that state's Pivot configuration.
note
For pivot animation sequences, you need to add the anim notify state AN_EarlyTransitionOut where the Pivot is going to end to control the naturally ending of the Pivot state.