---
name: "BIS_fnc_timeline_simulateCurves"
type: function
status: ok
groups: ["Timeline"]
arma3_since: "1.76"
locality: {"argument": null, "effect": null, "server_exec": false}
source: https://community.bistudio.com/wiki/BIS_fnc_timeline_simulateCurves
revid: 379575
updated: 2026-10-31T14:03:49Z
---

# BIS_fnc_timeline_simulateCurves

*Function · Timeline · Arma 3 v1.76*

## Description

Moves the objects animated by a timeline to the given point of the timeline. For every curve of the timeline (see [BIS_fnc_timeline_getSimulatedCurves](../functions/BIS_fnc_timeline_getSimulatedCurves.md)) the function:

- modifies *alpha* according to the timeline's interpolation mode (see [BIS_fnc_timeline_setInterpMode](../functions/BIS_fnc_timeline_setInterpMode.md)): linear, cubic, ease in/out, hermite, berp, bounce or quintic
- evaluates the curve at the resulting alpha and moves all its simulated objects ([BIS_fnc_richCurve_getSimulatedObjects](../functions/BIS_fnc_richCurve_getSimulatedObjects.md)) there with [setPosASL](../commands/setPosASL.md)
- rotates the objects with [setVectorDirAndUp](../commands/setVectorDirAndUp.md) according to the curve's orientation mode (see [BIS_fnc_richCurve_setOrientationMode](../functions/BIS_fnc_richCurve_setOrientationMode.md)): orientation stored in the keys, looking at the curve's look-at position, or following the direction of movement; the rotation is smoothed over *deltaTime*
- sets the field of view of simulated cameras (objects of kind "Camera_F") with [BIS_fnc_camera_setFOV](../functions/BIS_fnc_camera_setFOV.md)

In the Eden Editor, it also refreshes the curve's 3D drawing ([BIS_fnc_richCurve_edenTick](../functions/BIS_fnc_richCurve_edenTick.md)) and, if 3D icons are visible, draws an icon at the current position. Outside of Eden, once the curve reaches a key, the code stored in the key's "Event" variable is executed and the key's "reached" scripted event handler is called; each key does so only once (until the timeline loops).

The function is used internally by [BIS_fnc_timeline_tick](../functions/BIS_fnc_timeline_tick.md), which calls it every frame while the timeline is playing and not paused.

## Syntax

```sqf
[timeline, alpha, deltaTime] call BIS_fnc_timeline_simulateCurves
```

**Parameters:**

- `timeline`: [Object](../topics/Object.md) - the timeline
- `alpha`: [Number](../topics/Number.md) - (Optional, default 0) current position of the timeline, normalised to the range 0..1
- `deltaTime`: [Number](../topics/Number.md) - (Optional, default 0) time since the last frame, in seconds; used to smooth the orientation

**Returns:** [Nothing](../topics/Nothing.md)

## Examples

### Example 1

```sqf
[myTimeline, 0.5, 0] call BIS_fnc_timeline_simulateCurves; // moves the timeline's objects to the middle of the timeline
```

## See also

[BIS_fnc_timeline_tick](../functions/BIS_fnc_timeline_tick.md) · [BIS_fnc_timeline_play](../functions/BIS_fnc_timeline_play.md) · [BIS_fnc_timeline_getSimulatedCurves](../functions/BIS_fnc_timeline_getSimulatedCurves.md) · [BIS_fnc_timeline_setInterpMode](../functions/BIS_fnc_timeline_setInterpMode.md) · [BIS_fnc_richCurve_setOrientationMode](../functions/BIS_fnc_richCurve_setOrientationMode.md)

<sub>Source: [BI Community Wiki — BIS fnc timeline simulateCurves](https://community.bistudio.com/wiki/BIS_fnc_timeline_simulateCurves) (revision 379575).</sub>
