- Qt 6.12
- Qt Quick
- QML Types
- QtQuick.Particles
- ParticleSystem
- Qt 6.12.0 Reference Documentation

# ParticleSystem QML Type

A system which includes particle painter, emitter, and affector types. More...

Import Statement: | `import QtQuick.Particles`

- List of all members, including inherited members

## Properties

- empty : bool
- particleStates : list<Sprite>
- paused : bool
- running : bool

## Methods

- void pause()
- void reset()
- void restart()
- void resume()
- void start()
- void stop()

## Detailed Description

## Property Documentation

### empty : bool

empty is set to true when there are no live particles left in the system.

You can use this to pause the system, keeping it from spending any time updating, but you will need to resume it in order for additional particles to be generated by the system.

To kill all the particles in the system, use an Age affector.

### particleStates : list<Sprite>

You can define a sub-set of particle groups in this property in order to provide them with stochastic state transitions.

Each QtQuick::Sprite in this list is interpreted as corresponding to the particle group with the same name. Any transitions defined in these sprites will take effect on the particle groups as well. Additionally TrailEmitters, Affectors and ParticlePainters defined inside one of these sprites are automatically associated with the corresponding particle group.

### paused : bool

If paused is set to true, the particle system will not advance the simulation. When paused is set to false again, the simulation will resume from the same point it was paused.

The simulation will automatically pause if it detects that there are no live particles left, and unpause when new live particles are added.

It can also be controlled with the pause() and resume() methods.

### running : bool

If running is set to false, the particle system will stop the simulation. All particles will be destroyed when the system is set to running again.

It can also be controlled with the start() and stop() methods.

## Method Documentation

### void pause()

Pauses the simulation if it is running.

See also resume and paused.

### void reset()

Discards all currently existing particles.

### void restart()

Stops the simulation if it is running, and then starts it.

See also start, stop, and running.

### void resume()

Resumes the simulation if it is paused.

See also pause and paused.

### void start()

Starts the simulation if it has not already running.

See also stop, restart, and running.

### void stop()

Stops the simulation if it is running.

See also start, restart, and running.