# Setup and Use UE Root Motion Recorder Plugin

## Setup

### Blueprints

1. Add the **RootMotionRecorder** Plugin to project and enable
2. Attach the component to your Actor/Character
3. Add **Start Recording** and **End Recording** events to your event graph, an example can be seen below

<figure><img src="/files/P5apDOHEFWMeGy9T3D6K" alt=""><figcaption></figcaption></figure>

### C++

1. Add RootMotionRecorder Plugin to project and enable
2. Add component to your character subclass
3. Call `StartRecording()` and `EndRecording()` events respectively

## Settings

The RootMotionRecorder Component has the following editable properties:

<div align="left"><figure><img src="/files/gqiQQIe8eFQc0SHAb3xv" alt=""><figcaption></figcaption></figure></div>

### Configurable

* **Output Directory:** Absolute path that the JSON files will be written to
* **Should Debug Draw:** If `true`, a line will be drawn under the character's feet to show the path that is being recorded
* **Debug Draw Rotations:** If `true`, arrows will also be drawn on the debug line to show the root rotation
* **Debug Draw Offset:** Offset from the actor's origin to draw the line from

#### Non-Configurable (do not change unless you're post-processing JSON files!)

* **FPS:** set to 30. Please do not change this, as Motion Factory only accepts 30 FPS paths at the moment. It is exposed for extendability, in case you want to do some post-processing and resample later
* **Flatten trajectory:** - Ensures the Z (Up) component of the recorded root motion is constant, which is then taken down to 0 before writing to JSON (and converting to Y-Up)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.motorica.com/documentation/integrations/unreal-engine/how-to-guides/setup-and-use-ue-root-motion-recorder-plugin.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
