# Simulate

> Fast-forwards the Particle System by simulating particles over the given period of time, then pauses it.

## Definition

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

## Simulate(float, bool, bool, bool)

Fast-forwards the Particle System by simulating particles over the given period of time, then pauses it.

```csharp
public void Simulate(float t, bool withChildren, bool restart, bool fixedTimeStep)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Time period in seconds to advance the ParticleSystem simulation by. If `restart` is true, the ParticleSystem will be reset to 0 time, and then advanced by this value. If `restart` is false, the ParticleSystem simulation will be advanced in time from its current state by this value.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Fast-forward all child Particle Systems as well.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Restart and start from the beginning.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Only update the system at fixed intervals, based on the value in "Fixed Time" in the Time options.

### Remarks

Additional Resources: [ParticleSystem.Play](/engine/6000.7/script-reference/unityengine/particlesystem/play.md), [ParticleSystem.Pause](/engine/6000.7/script-reference/unityengine/particlesystem/pause.md)

## Simulate(float, bool, bool)

Fast-forwards the Particle System by simulating particles over the given period of time, then pauses it.

```csharp
public void Simulate(float t, bool withChildren, bool restart)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Time period in seconds to advance the ParticleSystem simulation by. If `restart` is true, the ParticleSystem will be reset to 0 time, and then advanced by this value. If `restart` is false, the ParticleSystem simulation will be advanced in time from its current state by this value.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Fast-forward all child Particle Systems as well.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Restart and start from the beginning.

### Remarks

Additional Resources: [ParticleSystem.Play](/engine/6000.7/script-reference/unityengine/particlesystem/play.md), [ParticleSystem.Pause](/engine/6000.7/script-reference/unityengine/particlesystem/pause.md)

## Simulate(float, bool)

Fast-forwards the Particle System by simulating particles over the given period of time, then pauses it.

```csharp
public void Simulate(float t, bool withChildren)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Time period in seconds to advance the ParticleSystem simulation by. If `restart` is true, the ParticleSystem will be reset to 0 time, and then advanced by this value. If `restart` is false, the ParticleSystem simulation will be advanced in time from its current state by this value.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Fast-forward all child Particle Systems as well.

### Remarks

Additional Resources: [ParticleSystem.Play](/engine/6000.7/script-reference/unityengine/particlesystem/play.md), [ParticleSystem.Pause](/engine/6000.7/script-reference/unityengine/particlesystem/pause.md)

## Simulate(float)

Fast-forwards the Particle System by simulating particles over the given period of time, then pauses it.

```csharp
public void Simulate(float t)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Time period in seconds to advance the ParticleSystem simulation by. If `restart` is true, the ParticleSystem will be reset to 0 time, and then advanced by this value. If `restart` is false, the ParticleSystem simulation will be advanced in time from its current state by this value.

### Remarks

Additional Resources: [ParticleSystem.Play](/engine/6000.7/script-reference/unityengine/particlesystem/play.md), [ParticleSystem.Pause](/engine/6000.7/script-reference/unityengine/particlesystem/pause.md)
