---
title: SCNParticleModifierStage
framework: scenekit
role: symbol
role_heading: Enumeration
path: scenekit/scnparticlemodifierstage
---

# SCNParticleModifierStage

Stages of SceneKit’s particle simulation process into which you can insert modifier blocks, used by the addModifier(forProperties:at:modifier:) method.

## Declaration

```swift
enum SCNParticleModifierStage
```

## Topics

### Constants

- [SCNParticleModifierStage.preDynamics](scenekit/scnparticlemodifierstage/predynamics.md)
- [SCNParticleModifierStage.postDynamics](scenekit/scnparticlemodifierstage/postdynamics.md)
- [SCNParticleModifierStage.preCollision](scenekit/scnparticlemodifierstage/precollision.md)
- [SCNParticleModifierStage.postCollision](scenekit/scnparticlemodifierstage/postcollision.md)

### Initializers

- [init(rawValue:)](scenekit/scnparticlemodifierstage/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Modifying Particles Over Time

- [propertyControllers](scenekit/scnparticlesystem/propertycontrollers.md)
- [addModifier(forProperties:at:modifier:)](scenekit/scnparticlesystem/addmodifier(forproperties:at:modifier:).md)
- [removeModifiers(at:)](scenekit/scnparticlesystem/removemodifiers(at:).md)
- [removeAllModifiers()](scenekit/scnparticlesystem/removeallmodifiers().md)
- [SCNParticleSystem.ParticleProperty](scenekit/scnparticlesystem/particleproperty.md)
- [SCNParticleModifierBlock](scenekit/scnparticlemodifierblock.md)
