Inherits: Node2D < CanvasItem < Node < Object

Category: Core

Brief Description

2D particle emitter.

Member Functions

Rect2 capture_rect ( ) const
void restart ( )

Member Variables

  • int amount - Number of particles emitted in one emission cycle.
  • int draw_order - Particle draw order. Uses DRAW_ORDER\_\* values. Default value: DRAW_ORDER_INDEX.
  • bool emitting - If true particles are being emitted. Default value: true.
  • float explosiveness - How rapidly particles in an emission cycle are emitted. If greater than 0, there will be a gap in emissions before the next cycle begins. Default value: 0.
  • int fixed_fps
  • bool fract_delta
  • int h_frames - Number of horizontal frames in texture.
  • float lifetime - Amount of time each particle will exist. Default value: 1.
  • bool local_coords - If true particles use the parent node’s coordinate space. If false they use global coordinates. Default value: true.
  • Texture normal_map
  • bool one_shot - If true only one emission cycle occurs. If set true during a cycle, emission will stop at the cycle’s end. Default value: false.
  • float preprocess - Particle system starts as if it had already run for this many seconds.
  • Material process_material - Material for processing particles. Can be a ParticlesMaterial or a ShaderMaterial.
  • float randomness - Emission lifetime randomness ratio. Default value: 0.
  • float speed_scale - Particle system’s running speed scaling ratio. Default value: 1.
  • Texture texture - Particle texture. If null particles will be squares.
  • int v_frames - Number of vertical frames in texture.
  • Rect2 visibility_rect - Editor visibility helper.

Numeric Constants

  • DRAW_ORDER_INDEX = 0 — Particles are drawn in the order emitted.
  • DRAW_ORDER_LIFETIME = 1 — Particles are drawn in order of remaining lifetime.


2D particle node used to create a variety of particle systems and effects. Particles2D features an emitter that generates some number of particles at a given rate.

Use the process_material property to add a ParticlesMaterial to configure particle appearance and behavior. Alternatively, you can add a ShaderMaterial which will be applied to all particles.

Member Function Description

  • Rect2 capture_rect ( ) const
  • void restart ( )