Particles

Inherits: GeometryInstance < VisualInstance < Spatial < Node < Object

Category: Core

Brief Description

3D particle emitter.

Member Functions

AABB capture_aabb ( ) const
void restart ( )

Member Variables

  • int amount - Number of particles to emit.
  • DrawOrder draw_order - Particle draw order. Uses DRAW_ORDER_* values. Default value: DRAW_ORDER_INDEX.
  • Mesh draw_pass_1
  • Mesh draw_pass_2
  • Mesh draw_pass_3
  • Mesh draw_pass_4
  • int draw_passes
  • bool emitting - If true particles are being emitted. Default value: true.
  • float explosiveness - Time ratio between each emission. If 0 particles are emitted continuously. If 1 all particles are emitted simultaneously. Default value: 0.
  • int fixed_fps
  • bool fract_delta
  • 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.
  • bool one_shot - If true only amount particles will be emitted. Default value: false.
  • float preprocess
  • Material process_material - Material for processing particles. Can be a ParticlesMaterial or a ShaderMaterial.
  • float randomness - Emission randomness ratio. Default value: 0.
  • float speed_scale - Speed scaling ratio. Default value: 1.
  • AABB visibility_aabb

Numeric Constants

  • MAX_DRAW_PASSES = 4

Enums

enum DrawOrder

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

Description

3D particle node used to create a variety of particle systems and effects. Particles 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

  • AABB capture_aabb ( ) const
  • void restart ( )