ParticlesMaterial

Inherits: Material < Resource < Reference < Object

Category: Core

Brief Description

Particle properties for Particles and Particles2D nodes.

Enumerations

enum Flags:

  • FLAG_ALIGN_Y_TO_VELOCITY = 0 — Use with set_flag to set flag_align_y.
  • FLAG_ROTATE_Y = 1 — Use with set_flag to set flag_rotate_y
  • FLAG_MAX = 4

enum Parameter:

  • PARAM_INITIAL_LINEAR_VELOCITY = 0 — Use with set_param, set_param_randomness, and set_param_texture to set initial velocity properties.
  • PARAM_ANGULAR_VELOCITY = 1 — Use with set_param, set_param_randomness, and set_param_texture to set angular velocity properties.
  • PARAM_ORBIT_VELOCITY = 2 — Use with set_param, set_param_randomness, and set_param_texture to set orbital_velocity properties.
  • PARAM_LINEAR_ACCEL = 3 — Use with set_param, set_param_randomness, and set_param_texture to set linear acceleration properties.
  • PARAM_RADIAL_ACCEL = 4 — Use with set_param, set_param_randomness, and set_param_texture to set radial acceleration properties.
  • PARAM_TANGENTIAL_ACCEL = 5 — Use with set_param, set_param_randomness, and set_param_texture to set tangential acceleration properties.
  • PARAM_DAMPING = 6 — Use with set_param, set_param_randomness, and set_param_texture to set damping properties.
  • PARAM_ANGLE = 7 — Use with set_param, set_param_randomness, and set_param_texture to set angle properties.
  • PARAM_SCALE = 8 — Use with set_param, set_param_randomness, and set_param_texture to set scale properties.
  • PARAM_HUE_VARIATION = 9 — Use with set_param, set_param_randomness, and set_param_texture to set hue_variation properties.
  • PARAM_ANIM_SPEED = 10 — Use with set_param, set_param_randomness, and set_param_texture to set animation speed properties.
  • PARAM_ANIM_OFFSET = 11 — Use with set_param, set_param_randomness, and set_param_texture to set animation offset properties.
  • PARAM_MAX = 12

enum EmissionShape:

  • EMISSION_SHAPE_POINT = 0 — All particles will be emitted from a single point.
  • EMISSION_SHAPE_SPHERE = 1 — Particles will be emitted in the volume of a sphere.
  • EMISSION_SHAPE_BOX = 2 — Particles will be emitted in the volume of a box.
  • EMISSION_SHAPE_POINTS = 3
  • EMISSION_SHAPE_DIRECTED_POINTS = 4

Description

ParticlesMaterial defines particle properties and behavior. It is used in the process_material of Particles and Particles2D emitter nodes.

Some of this material’s properties are applied to each particle when emitted, while others can have a CurveTexture applied to vary values over the lifetime of the particle.

Property Descriptions

Setter set_param(value)
Getter get_param()

Initial rotation applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s rotation will be animated along this CurveTexture.

Setter set_param_randomness(value)
Getter get_param_randomness()

Rotation randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Initial angular velocity applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s angular velocity will vary along this CurveTexture.

  • float angular_velocity_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Angular velocity randomness ratio. Default value: 0.

Setter set_flag(value)
Getter get_flag()

If true animation will loop. Default value: false.

Setter set_param(value)
Getter get_param()

Particle animation offset.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s animation offset will vary along this CurveTexture.

  • float anim_offset_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Animation offset randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Particle animation speed.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s animation speed will vary along this CurveTexture.

  • float anim_speed_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Animation speed randomness ratio. Default value: 0.

Setter set_color(value)
Getter get_color()

Each particle’s initial color. If the Particle2D’s texture is defined, it will be multiplied by this color.

Setter set_color_ramp(value)
Getter get_color_ramp()

Each particle’s color will vary along this GradientTexture.

Setter set_param(value)
Getter get_param()

The rate at which particles lose velocity.

Setter set_param_texture(value)
Getter get_param_texture()

Damping will vary along this CurveTexture.

Setter set_param_randomness(value)
Getter get_param_randomness()

Damping randomness ratio. Default value: 0.

Setter set_emission_box_extents(value)
Getter get_emission_box_extents()

The box’s extents if emission_shape is set to EMISSION_SHAPE_BOX.

Setter set_emission_color_texture(value)
Getter get_emission_color_texture()
Setter set_emission_normal_texture(value)
Getter get_emission_normal_texture()
  • int emission_point_count
Setter set_emission_point_count(value)
Getter get_emission_point_count()

The number of emission points if emission_shape is set to EMISSION_SHAPE_POINTS or EMISSION_SHAPE_DIRECTED_POINTS.

Setter set_emission_point_texture(value)
Getter get_emission_point_texture()
Setter set_emission_shape(value)
Getter get_emission_shape()

Particles will be emitted inside this region. Use EMISSION_SHAPE_* constants for values. Default value: EMISSION_SHAPE_POINT.

  • float emission_sphere_radius
Setter set_emission_sphere_radius(value)
Getter get_emission_sphere_radius()

The sphere’s radius if emission_shape is set to EMISSION_SHAPE_SPHERE.

Setter set_flag(value)
Getter get_flag()
  • bool flag_disable_z
Setter set_flag(value)
Getter get_flag()

If true particles will not move on the z axis. Default value: true for Particles2D, false for Particles.

  • bool flag_rotate_y
Setter set_flag(value)
Getter get_flag()
Setter set_flatness(value)
Getter get_flatness()
Setter set_gravity(value)
Getter get_gravity()

Gravity applied to every particle. Default value: (0, 98, 0).

Setter set_param(value)
Getter get_param()

Initial hue variation applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s hue will vary along this CurveTexture.

  • float hue_variation_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Hue variation randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Initial velocity for each particle.

  • float initial_velocity_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Initial velocity randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Linear acceleration applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s linear acceleration will vary along this CurveTexture.

  • float linear_accel_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Linear acceleration randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Orbital velocity applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s orbital velocity will vary along this CurveTexture.

  • float orbit_velocity_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Orbital velocity randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Radial acceleration applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s radial acceleration will vary along this CurveTexture.

  • float radial_accel_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Radial acceleration randomness ratio. Default value: 0.

Setter set_param(value)
Getter get_param()

Initial scale applied to each particle.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s scale will vary along this CurveTexture.

Setter set_param_randomness(value)
Getter get_param_randomness()

Scale randomness ratio. Default value: 0.

Setter set_spread(value)
Getter get_spread()

Each particle’s initial direction range from +spread to -spread degrees. Default value: 45.

Setter set_param(value)
Getter get_param()

Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle’s velocity.

Setter set_param_texture(value)
Getter get_param_texture()

Each particle’s tangential acceleration will vary along this CurveTexture.

  • float tangential_accel_random
Setter set_param_randomness(value)
Getter get_param_randomness()

Tangential acceleration randomness ratio. Default value: 0.

Setter set_trail_color_modifier(value)
Getter get_trail_color_modifier()

Trail particles’ color will vary along this GradientTexture.

  • int trail_divisor
Setter set_trail_divisor(value)
Getter get_trail_divisor()

Emitter will emit amount divided by trail_divisor particles. The remaining particles will be used as trail(s).

Setter set_trail_size_modifier(value)
Getter get_trail_size_modifier()

Trail particles’ size will vary along this CurveTexture.