> For the complete documentation index, see [llms.txt](https://axongenesis.gitbook.io/timeflow/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://axongenesis.gitbook.io/timeflow/reference/behaviors/automation/look-at.md).

# Look At

Rotate to face towards a target object

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

Apply this behavior to an object to make it automatically rotate to face towards another object.&#x20;

{% hint style="info" %}
To add Look At, right-click on an object in the Timeflow view and select:

**Add Automation > Look At**
{% endhint %}

Look At has just 1 read-only channel outputting the calculated rotation. &#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FVNwRWut41itxOvrWJr1U%2Fimage.png?alt=media&amp;token=c04ca7dd-079e-4fae-878d-475ac24b2f4d" alt=""><figcaption><p>The Look At Rotation channel shows the calculated value and does not support keyframing.</p></figcaption></figure>

{% hint style="warning" %}
Look At overrides the objects rotation. To preform blending or additional operations, it may be helpful to place Look At on a parent object, or to use [Channel Link](/timeflow/user-guide/timeflow-view/channel-link.md).
{% endhint %}

## Look At Editor

Select an object to view the settings in the Inspector.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FXbl7jTV3bW9Ru4fm1HdR%2Fimage.png?alt=media&amp;token=1e863e0d-a002-4793-8fca-d8a7cbac80d4" alt=""><figcaption></figcaption></figure>

For common features please refer to [Menu Bar](/timeflow/user-guide/timeflow-editor/menu-bar.md) and [Update Settings](/timeflow/user-guide/timeflow-editor/update-settings.md).

## Target Mode

Select the desired target from the drop-down menu in the menu bar.

### Global Target

Uses the currently active [Look At Target](/timeflow/reference/behaviors/automation/look-at-target.md).

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FaZiRlejhrEXruzM5yVXL%2Fimage.png?alt=media&amp;token=6e6cd1a0-a312-4753-afff-7e431d58b074" alt=""><figcaption><p>Click the Select button to select the current active target in the scene.</p></figcaption></figure>

{% hint style="success" %}
Global Target is the default setting and facilitates in quickly setting up lots of objects to all face the same global object.
{% endhint %}

### Custom Target

Use this mode to explicitly specify an object to look at.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F7ZPADtTZKp5g71pQMc6e%2Fimage.png?alt=media&amp;token=d49b5ba6-bfed-4d51-b388-58801eb0c896" alt=""><figcaption></figcaption></figure>

### Main Camera

Uses the primary camera tagged with MainCamera.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FjpkqD6ylgpitypplmVYr%2Fimage.png?alt=media&amp;token=444ff8e2-8c16-47be-a075-a50a7ca4352f" alt=""><figcaption></figcaption></figure>

### World Position

Uses a fixed position defined in world coordinates.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FjWfrECEmtMmXY4ShIo9U%2Fimage.png?alt=media&amp;token=f8f1a410-4a36-4762-b927-9adb776d9d32" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
If the target object is invalid or cannot be found, Look At fails silently and is skipped, having no effect on the object's rotation.
{% endhint %}

## Rotation Mode

Select from 2 modes for generating rotation

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FiLQlIUPJMAd5JvvRr546%2Fimage.png?alt=media&amp;token=433110c1-1ba1-4af9-bdff-da74c440bc7f" alt=""><figcaption></figcaption></figure>

### Look At

Calculates rotation to face towards the target object. This is the default mode.

### Match Rotation

Instead of facing towards the object, this mode copies the rotation of the target object (in world coordinates).

{% hint style="success" %}
Matching rotation is useful for placing objects on the camera plane. When dealing with sprites or planar objects, this mode prevents skewing which can occur with Look At rotations, instead placing objects perpendicular (or parallel) to the target object.&#x20;
{% endhint %}

### Up Vector

Defines the upward direction of the object. This field expects a normalized vector (adding up to 1), usually one of the cardinal directions (1,0,0 or 0,1,0 etc...) however any value may be entered.

## Orientation

Applies additional rotation to the object. Use orientation to further adjust the rotation angle.

{% hint style="warning" %}

#### World Space

Look At rotations are calculated in world space coordinates. Whenever Look At is in use, it automatically sets [Rotator](/timeflow/reference/behaviors/tools/rotator.md) to world space mode.&#x20;
{% endhint %}

## Lock Axis

Use the toggle switches to lock the final rotation on specific axes.  &#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FsWmIZ70ZkZZTHrIPbSJm%2Fimage.png?alt=media&amp;token=f944f393-ef51-4d8c-92a7-320422bc01ba" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Each locked axis is assigned the value of Orientation as the default.
{% endhint %}

## Smooth Time

Applies temporal smoothing defined in seconds. The higher the value, the slower the object rotates. Set to zero for no smoothing, applying the look at calculation immediately.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2Ff69GjJA54MPaXmojRcCT%2Fimage.png?alt=media&amp;token=7026b8fe-47d9-478a-9c2b-38b9ed838035" alt=""><figcaption></figcaption></figure>

### Starting Rotation

When using Smooth Time, the starting rotation provides additional control for what orientation the object has initially. Use this to adjust the starting placement of the object before Look At takes full control.&#x20;

{% hint style="info" %}
Click **Set** to capture the current object rotation, and **Goto** to apply the value to the object rotation immediately.&#x20;
{% endhint %}

{% hint style="warning" %}
**Play the timeline for accurate previews**

Temporal smoothing requires continuous forward play for accurate calculation. When jumping in time, such as rewinding or moving the playhead in the Timeflow view, Look At reverts to the initial rotation and may not be accurate until playback resumes.
{% endhint %}

## Override

In situations where an object may use Look At during only parts of an animation, the override features may be used to take back control of an object's rotation using animation channels or any other means in Timeflow.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F7DYz0SA2b3U7ydEmo14Z%2Fimage.png?alt=media&amp;token=8a6dcbf7-6c4b-4ffb-8cec-c2931480ea1f" alt=""><figcaption></figcaption></figure>

The override value sets the objects rotation. Use Blend to interpolate between the calculated look at rotation and the override value.

{% hint style="success" %}
The override and blend values may be animated in Timeflow or controlled via script to transition objects from Look At control to other movement.
{% endhint %}
