# Tracks

{% embed url="<https://youtu.be/6ROqGm_x37A>" %}

A track is a special type of channel for objects in Timeflow, displayed on the same horizontal row as the object. Tracks can control animation timing and the active state of objects.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FiXe5Ryu4GHTc4s3k6oZ4%2Fimage.png?alt=media&#x26;token=ca712ee7-cc9b-4d8d-ab7c-1622d0878af8" alt=""><figcaption><p>Both tracks and channels may be assigned a display color to help distinguish them.</p></figcaption></figure>

Each object has just 1 track channel, however it may be split into as many sections as needed. By default, tracks are created [Auto Full Length](#auto-full-length) and locked to prevent accidentally changing them.&#x20;

## Locking Tracks

Locked track sections may still be selected, however when dragged they remain unchanged and display a small icon to indicate they are locked. The fields in the info panel are also disabled while the selected tracks are locked.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FkWhL5Ow9DKZLgXCuC8N4%2Fimage.png?alt=media&#x26;token=857c4a69-a071-4e2d-a5f7-99bcddfac340" alt=""><figcaption><p>The lock icon on each track section is only displayed while dragging to indicate locked tracks, which cannot be moved.</p></figcaption></figure>

{% hint style="info" %}
To unlock tracks, select a track section in the [Track View](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/track-view) and click the small lock icon on the left side of the info panel.&#x20;
{% endhint %}

{% hint style="success" %}
The info panel also supports bulk editing for multiple selected tracks.
{% endhint %}

## Editing Tracks

Once unlocked, the track section can now be edited by setting the start and stop points, and/or dragging the track.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FNfUU1Uhj88alGP8mFOFF%2Fimage.png?alt=media&#x26;token=f7371900-41cd-4c32-9e56-d542ed886305" alt=""><figcaption><p>Click and drag on the track start and end handles to edit the track duration.</p></figcaption></figure>

Track start and end times can be edited numerically in the info panel, or by dragging the start and end handles of the track section in the Track View. The cursor changes to a horizontal slider arrow (as shown above) whenever the mouse hovers over a track start or end point.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FSV1toPzCfvI59XcLAGpl%2Fimage.png?alt=media&#x26;token=91d350c7-e0f0-4a49-8739-cc0003e08bce" alt=""><figcaption><p>Shows track sections that have been unlocked and modified.</p></figcaption></figure>

Clicking and dragging anywhere in the middle of a track section moves the start and end together maintaining its duration.&#x20;

![](https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FczMoHnqRvGiv2vC3CAFX%2Fimage.png?alt=media\&token=2803b44b-1928-4f43-abe9-d0089465a806)

When tracks are moved, they automatically stop when a neighboring track section is reached, however if dragged further, the track section can overwrite another as depicted below.&#x20;

![](https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F09mHPRsbaAcYNRIfEjSP%2Fimage.png?alt=media\&token=68574140-833e-4bbc-a789-6cd864d01e82)

While dragging selected tracks, any track sections behind it that appear ghosted will be replaced when the drag is released (as shown above).

{% hint style="info" %}
**Cancel Drag**

To cancel a drag currently underway without making changes, press the **Escape** key to stop the drag operation and return items to their starting position, maintaining the current selection. If the escape key is pressed while not dragging, it deselects all.&#x20;
{% endhint %}

{% hint style="success" %}
All the same keyboard shortcuts used with keyframes and moving things in time can also be used with track sections. See [keyboard-shortcuts](https://axongenesis.gitbook.io/timeflow/user-guide/menus-and-shortcuts/keyboard-shortcuts "mention")
{% endhint %}

{% hint style="success" %}
**Go to track start or end**

When a track section is selected, use the keyboard shortcut **I** (letter i for *in*) to set the playhead at the track in point, and the shortcut **O** (letter o for *out*) to go to the out point.
{% endhint %}

{% hint style="success" %}
**Set the selected tracks start or end time**

Set the start time of selected tracks by pressing **Alt + I** (*in*), or set the end time using the keyboard shortcut **Alt + O** (*out*).
{% endhint %}

{% hint style="info" %}
**Snap to Grid**\
Hold the **Alt** key while dragging tracks to snap to the time grid.&#x20;
{% endhint %}

## ![](https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FicIxxZBRZjM8WBqFknF4%2Fimage.png?alt=media\&token=12d1003e-37d4-47d1-9981-333b86b4b973) Drag Time Offset

Tracks may optionally be configured to control [Time Offset](https://axongenesis.gitbook.io/timeflow/timeflow-editor/update-settings#time-offset). When [Drag Time Offset](https://axongenesis.gitbook.io/timeflow/timeflow-editor/update-settings#drag-time-offset) is enabled, tracks are no longer moved directly when dragged, but instead shift the time of the entire object.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FLzdVZ2ZH60bWSK60TAcL%2Fimage.png?alt=media&#x26;token=6a70c9ff-d444-4534-9ec6-39f8596d842d" alt=""><figcaption></figcaption></figure>

Dragging is still allowed even when the track is locked (as shown above) since only the Time Offset is being affected. The track sections retain their start and end times, unless directly changed.&#x20;

{% hint style="info" %}
To disable selection and track editing for an object, while still keeping it in view, use the lock on the far left in the [Switches](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/switches) column.&#x20;
{% endhint %}

Please see the documentation for [Drag Time Offset](https://axongenesis.gitbook.io/timeflow/timeflow-editor/update-settings#drag-time-offset) for further details.

## Auto Full Length

When **Auto** is enabled, the track automatically adjusts its length to match the timeline. Enabling Auto also locks the track to prevent changes and is the default mode for new tracks.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FTHzeVFfWqYgrAGdNU3v2%2Fimage.png?alt=media&#x26;token=e99fc6d8-dd1a-480e-87b5-dd4e21effbc7" alt=""><figcaption><p>The selected track (in blue) has Auto Full Length enabled and is locked to prevent changes.</p></figcaption></figure>

{% hint style="info" %}
Enabling **Auto** for any track results in a single full length track section, removing all others and locking the track. &#x20;
{% endhint %}

{% hint style="info" %}
**Auto** is disabled any time either the start or end times of a track are directly modified (which would require first unlocking the track).
{% endhint %}

## Multiple Sections

Each track channel may be made up of 1 or unlimited track sections, each defining a time range. Tracks are displayed in blocks and work similar to keyframes in the way they are created, selected, and edited. By default, tracks and keyframes may be selected and edited together.

![](https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FHxYNLREqub3ZrqXr4ccu%2Fimage.png?alt=media\&token=ec4c1ba3-ee2b-4f63-ac3f-f7cf7c2a15ba)

Track sections may be used for a number of purposes including starting and stopping behaviors and showing and hiding objects. How tracks affect the object is explained further below in [Track Visibility](#track-visibility).

{% hint style="success" %}
Double-click any track section to select it and move the playhead to the track start.
{% endhint %}

{% hint style="success" %}

#### Adding Track Sections

A new track segment can be created by holding the **Control** key while left-clicking in an empty area of the track channel. A single click creates a track segment with a length equal to the current [grid division](https://axongenesis.gitbook.io/timeflow/user-guide/timeline#grid-divisions) settings. Or click and drag to manually draw out the length desired.
{% endhint %}

{% hint style="warning" %}
New track sections are only aligned with the grid if [grid snap](https://axongenesis.gitbook.io/timeflow/user-guide/timeline#grid-and-snap) is enabled, or the **Alt** key is held while dragging or adding new tracks.
{% endhint %}

## Editing Multiple Tracks

When multiple track sections are selected, dragging the start or end points of any selected track affects all others selected. This is a useful to edit and maintain the same length for each.

<div align="left"><figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FYXR2RRh7UV7jO13hQdrD%2Fimage.png?alt=media&#x26;token=588e4bb3-cee0-49a8-bd42-20000e42f316" alt=""><figcaption></figcaption></figure> <figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2Fvvs845Zp2U23j6tqwnPL%2Fimage.png?alt=media&#x26;token=222e9fc0-c3b6-4e23-9bca-f1bfe745d0cb" alt=""><figcaption></figcaption></figure></div>

{% hint style="info" %}
**Keyframe Indicators**\
The small notches on the blue and red track channels shown above indicate keyframes on channels currently collapsed in the display. These cannot be edited directly while collapsed but provide a useful overview of the keyframes within.
{% endhint %}

For more advanced track and keyframe editing features, see [Alignment Tools](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/alignment-tools).

## Related Keyframes

{% embed url="<https://youtu.be/Ax-xvdfgztk>" %}

Keyframes, events, and track sections directly below each selected track are considered related keyframes. This provides a useful way to work with a section of time including multiple objects and channels.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2Fq8bx6sisPvrpDJjbuXZJ%2Fimage.png?alt=media&#x26;token=84ab8044-baee-4f86-bd1e-bfbaec8b90d5" alt=""><figcaption><p>Related keyframes to the selected track are highlighed in green. Other keyframes outside of the track are ignored.</p></figcaption></figure>

By default, all tracks and keyframes may be moved freely, independently of each other to avoid causing inadvertent changes across channels. However, at times you may want to move tracks and keyframes as a group, which can be accomplished by including related keyframes.

{% hint style="success" %}
**Show Related Keyframes**

With at least 1 track selected, hold the **Shift** key to highlight related keyframes in green. Continue to hold the Shift key while dragging tracks to move related keyframes with it. This modifier may be added before or after starting the drag.
{% endhint %}

{% hint style="success" %}
**Select Related Keyframes**

While holding **Shift**, double-click on the selected track to add all related keyframes to the current selection. With all tracks and related keyframes selected, additional editing operations may be performed. See [Alignment Tools](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/alignment-tools) for more.
{% endhint %}

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FJjB4JXvwGhHf1NU6DHdO%2Fimage.png?alt=media&#x26;token=af0d5de9-e034-4d4a-a7c5-a25a0e96be43" alt=""><figcaption><p>Select related keyframes for further editing (selection highlighted in yellow)</p></figcaption></figure>

## Track Colors

Track colors are set by clicking the color swatch icon on the left. Clicking a swatch for any item selected opens the color palette and applies to the entire selection.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F7nbFWd1fogTU1cp5taoI%2Fimage.png?alt=media&#x26;token=7f475ed0-8f32-46bb-8ce9-5e09d1b1a4ed" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Click the swatch icon in the column header to apply color to all objects and channels currently displayed in the Timeflow view, regardless of whether they are selected or not.
{% endhint %}

{% hint style="success" %}
Use the keyboard shortcut Alt + C to open the color palette menu. This applies to all selected items, or if nothing is selected then it applies to all items in the view.
{% endhint %}

For more information on managing colors, see [track-colors](https://axongenesis.gitbook.io/timeflow/user-guide/menus-and-shortcuts/timeflow-menu/track-colors "mention")

## Track Labels

Each track section can optionally display a label in the Track View. This can be helpful for organization by adding comments to describe the action or event or to add revision notes.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2Fqf5OpaRzI1ELktcWKZYe%2Fimage.png?alt=media&#x26;token=54e0fc3d-6d5c-435e-9bfb-0866d87b3fc7" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
To add a label, select the track section and press the **Enter** or **Return** key to edit the text directly, or alternatively it may be entered into the info panel in the lower left.&#x20;

Bulk editing is supported when using the Label field in the info panel.
{% endhint %}

## Local Time Scope

Double-clicking a track opens the current selection of tracks and keyframes in a localized time view. This allows editing relative to the selected track(s), as though working in a nested timeline.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FfVDQ8OaJG1KIv5B9Yuh2%2Fimage.png?alt=media&#x26;token=7c0f9968-3990-4b18-b699-ae6f18dab7c9" alt=""><figcaption></figcaption></figure>

To exit Local Time Scope, click the icon ![](https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FZSQxLLpRNRaNj97KOlxz%2Fimage.png?alt=media\&token=d02ac1a6-17bc-479b-8092-ae0832d9cad7) or use the keyboard shortcut **S**.

For more information, please see [local-time-scope](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/local-time-scope "mention")

## Track Modes

{% embed url="<https://youtu.be/AbT-OSRoPwA>" %}

Each track may optionally be used to control the active or visible state of an object and its children. This option is displayed in the [Values Column](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/values-column), in the [Object Context Menu](https://axongenesis.gitbook.io/timeflow/user-guide/menus-and-shortcuts/context-menus/object-menu), and also in the [TimeflowObject](https://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/broken-reference) inspector.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FMwFft06xgyAQFDxUTxyf%2Fimage.png?alt=media&#x26;token=6c910d48-32d8-4065-aa8f-ac086b693fc5" alt=""><figcaption></figcaption></figure>

### On

This is the default mode for new tracks. This is a passive mode, meaning no changes are made to the object state or visibility. Only Timeflow behaviors are affected, with the track area controlling when channels are updated. This can be used to limit animation to specific time ranges.

{% hint style="warning" %}
Note that for all modes, behaviors on the object and its children are *only* updated during the active track sections. The parent take precedence over the child tracks, filtering down the hierarchy.
{% endhint %}

### Activate

This mode can be used to active and deactivate the current game object (including its hierarchy).

{% hint style="danger" %}
Be careful using this mode because deactivating an object completely stops all scripts on the object. Timeflow manages these objects so that they can be reactivated, however depending on what other components are in use it may cause undesirable behavior.
{% endhint %}

### Renderer

This mode controls the visibility of the game object and all of its descendants by activating/deactivating all renderer components and colliders. In this mode all of the game objects remain active with their components continuing to update, but are not visible in the camera nor interact with physics or ray casting.&#x20;

{% hint style="info" %}
During setup each TimeflowObject prebuilds a list of renderers, colliders, lights, and visual effect components so that it can quickly activate or deactivate them during playback. This affects the object and all of its descendants, with the exception of any children which are set to the Renderer Independent mode, described next. &#x20;
{% endhint %}

### Renderer Independent

Using this mode, the track controls the objects visibility separately from its parents. This is typically only used in situations where the parent group is using Renderer mode and you need a specific object in the hierarchy to remain visible or hidden, independent of what the parent is doing. &#x20;

### Activate Children

This mode is similar to Activate, however it only activates/deactivates children of the current object, not the object itself. This is helpful in cases where the parent needs to stay active.&#x20;

## Track Shadows

Each track casts a shadow over its channels and children to better visuals active regions. Any areas of animation falling under a shadow, whether from its own track or parent, is inactive.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FVTayjawxHPC0iDiLDzpH%2Fimage.png?alt=media&#x26;token=b69e61a0-423b-453f-98d7-942f933f93c0" alt=""><figcaption><p> The shadowing color has been intensified in this screenshot to demonstrate.</p></figcaption></figure>

{% hint style="info" %}
Using [Renderer Independent](#renderer-independent) mode may be used to allow a child object to remain visible regardless of the parent track state.&#x20;
{% endhint %}


---

# 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://axongenesis.gitbook.io/timeflow/user-guide/timeflow-view/tracks.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.
