> For the complete documentation index, see [llms.txt](https://lightbug14.gitbook.io/ccp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lightbug14.gitbook.io/ccp/how-to.../core/use-root-motion.md).

# Use root motion

By using root motion you can switch from script-based movement to animation-based movement. For more information about what root motion is please visit [this link](https://docs.unrealengine.com/en-US/AnimatingObjects/SkeletalMeshAnimation/RootMotion/index.html).

Root motion can be enabled/disabled at any time by calling the ***useRootMotion*** property from the `CharacterActor` component.

```csharp
CharacterActor.UseRootMotion = true;
```

![](https://3428853154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LvxVSjyzvP6F7c9h_Hu%2Fuploads%2FtILh5JGXoACDFhqfwFeC%2Fimage.png?alt=media\&token=fdc1cb3d-313c-473a-a430-f3f4bea4611b)

In Addition, it is possible to tweak the way position and rotation get updated by root motion. For example, you can mix animation-based movement with script-based rotation.

Do you want to apply root motion for planar movement but at the same time use script-based vertical movement (e.g. gravity, jumping, etc)? No problem, choose the *Set Planar Velocity* option from the *Root Motion Velocity Type* field.
