# Script

> Use this enumeration to specify to Unity that it should execute the physics simulation manually when you call Physics2D.Simulate.

## Definition

* **Type:** Field
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
Script = 2
```

### Remarks

Executing the physics simulation in a script provides full control over when the simulation runs and the time over which it runs. Using this mode, you can emulate both [SimulationMode2D.FixedUpdate](/engine/6000.7/script-reference/unityengine/simulationmode2d/fixedupdate.md) and [SimulationMode2D.Update](/engine/6000.7/script-reference/unityengine/simulationmode2d/update.md) along with any other custom time interval.

The stability and determinism of the simulation depends on when Unity executes the simulation. If the simulation runs each frame, then it is always synchronized, including contacts between [Collider2D](/engine/6000.7/script-reference/unityengine/collider2d.md)s. This means that [Rigidbody2D](/engine/6000.7/script-reference/unityengine/rigidbody2d.md) interpolation is not required.

Additional Resources: [Physics2D.simulationMode](/engine/6000.7/script-reference/unityengine/physics2d/simulationmode.md).
