# RunSimulationStages(float, SimulationStage, SimulationOption)

> Runs specified physics simulation stages on this physics scene.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.3/script-reference/unityengine.md)
* **Assembly:** UnityEngine.PhysicsModule

```csharp
public void RunSimulationStages(float step, SimulationStage stages, SimulationOption options = SimulationOption.All)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): The time to advance physics by.**** (\[SimulationStage]\(/engine/6000.3/script-reference/unityengine/simulationstage)): An enum to specify which stages to run.**** (\[SimulationOption]\(/engine/6000.3/script-reference/unityengine/simulationoption)): A flag enum to specify any additional simulation options.

### Remarks

Stages are processed in this order:

1. [SimulationStage.PrepareSimulation](/engine/6000.3/script-reference/unityengine/simulationstage/preparesimulation.md)
2. [SimulationStage.RunSimulation](/engine/6000.3/script-reference/unityengine/simulationstage/runsimulation.md)
3. [SimulationStage.PublishSimulationResults](/engine/6000.3/script-reference/unityengine/simulationstage/publishsimulationresults.md)

step argument can be any number if [SimulationStage.RunSimulation](/engine/6000.3/script-reference/unityengine/simulationstage/runsimulation.md) stage is not specified.

Additional Resources: [PhysicsScene.Simulate](/engine/6000.3/script-reference/unityengine/physicsscene/simulate.md), [Physics.Simulate](/engine/6000.3/script-reference/unityengine/physics/simulate.md).
