Simple Motion Component

You can use the Simple Motion component to play a motion without an animation graph. Add this component to an entity with the Actor component to use a single motion for your actor. For complex motions, refer to the AnimGraph component.

Provider

EMotionFX

Dependencies

Actor component

Simple Motion properties

Add the Simple Motion component to an entity to assign a motion for the actor.

PropertyDescriptionValuesDefault
Preview In EditorPlays the motion in Open 3D Engine (O3DE) Editor.BooleanDisabled
MotionSpecifies the motion asset that you want to animate the actor with.Motion assetNone
Loop motionRuns the animation continuously.BooleanDisabled
Retarget motionAllows motion that was created with an actor that was configured with specific bone lengths to be played on another actor with different bone lengths. When applied, the motion does not affect bone lengths. The skeleton must follow the same hierarchy and the bone names must be identical to work properly.BooleanDisabled
Reverse motionRuns the animation in reverse.BooleanDisabled
Mirror motionMirrors the animation of the character’s body parts. For example, if the actor kicks with the right leg while the left leg is planted, the mirror effect causes the left leg to kick while the right leg is planted.BooleanDisabled
Play speedSpecifies the rate at which the motion is played.0 to Infinity1.0
Blend In TimeSpecifies the blend in time (in seconds) for the motion. You can set this parameter for a motion that you want to start and that is blending from a previous motion.0 to Infinity0.0
Blend Out TimeSpecifies the blend out time (in seconds) for the motion. You can set this parameter for a motion that is currently playing and that will blend into the next motion.0 to Infinity0.0
Play on activeStart the animation when the entity is activated.BooleanEnabled
In-placeRemoves any positional or rotational changes of root joints from the animation.BooleanDisabled

SimpleMotionComponentRequestBus

Use the following request functions with the SimpleMotionComponentRequestBus EBus interface to communicate Simple Motion components in your game. For more information, refer to Working with the Event Bus (EBus) system .

Request NameDescriptionParameterReturnScriptable
BlendInTimeSets the Blend In Time of the motion.Time: FloatNoneYes
BlendOutTimeSets the Blend Out Time of the motion.Time: FloatNoneYes
GetBlendInTimeReturns the Blend In Time of the motion.NoneTime: FloatYes
GetBlendOutTimeReturns the Blend Out Time of the motion.NoneTime: FloatYes
GetLoopMotionReturns True if the motion is set to loop.NoneBooleanYes
GetMotionReturns the AssetId of the motion.NoneMotion: AssetIdYes
GetPlaySpeedReturns the Play speed.NoneSpeed: FloatYes
GetPlayTimeReturns the amount of time elapsed since the start of the current motion.NoneTime: FloatYes
LoopMotionIf True, sets the motion to loop.BooleanNoneYes
MirrorMotionIf True, mirrors the motion.BooleanNoneYes
MotionSets the motion asset.Motion: AssetIdNoneYes
PlayMotionStarts playing the motion.NoneNoneYes
PlayTimeStarts playing the motion from a specific elapsed time.Time: FloatNoneYes
RetargetMotionIf True, enables the motion to be retargeted to the current actor.BooleanNoneYes
ReverseMotionIf True, sets the motion to play in reverse.BooleanNoneYes
SetPlaySpeedSets the Play speed.Speed: FloatNoneYes

Copyright © 2022 Open 3D Engine Contributors

Documentation Distributed under CC BY 4.0.
For our trademark, privacy and antitrust policies, code of conduct, and terms of use, please click the applicable link below or see https://www.lfprojects.org.


The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our Trademark Policy page.