ParticlesMaterial

Inherits: Material < Resource < Reference < Object

Category: Core

Brief Description

Particle properties for Particles and Particles2D nodes.

Member Variables

  • float angle - Initial rotation applied to each particle.
  • Texture angle_curve - Each particle’s rotation will be animated along this CurveTexture.
  • float angle_random - Rotation randomness ratio. Default value: 0.
  • float angular_velocity - Initial angular velocity applied to each particle.
  • Texture angular_velocity_curve - Each particle’s angular velocity will vary along this CurveTexture.
  • float angular_velocity_random - Angular velocity randomness ratio. Default value: 0.
  • bool anim_loop - If true animation will loop. Default value: false.
  • float anim_offset - Particle animation offset.
  • Texture anim_offset_curve - Each particle’s animation offset will vary along this CurveTexture.
  • float anim_offset_random - Animation offset randomness ratio. Default value: 0.
  • float anim_speed - Particle animation speed.
  • Texture anim_speed_curve - Each particle’s animation speed will vary along this CurveTexture.
  • float anim_speed_random - Animation speed randomness ratio. Default value: 0.
  • Color color - Each particle’s initial color. If the Particle2D’s texture is defined, it will be multiplied by this color.
  • Texture color_ramp - Each particle’s color will vary along this GradientTexture.
  • float damping - The rate at which particles lose velocity.
  • Texture damping_curve - Damping will vary along this CurveTexture.
  • float damping_random - Damping randomness ratio. Default value: 0.
  • Vector3 emission_box_extents - The box’s extents if emission_shape is set to EMISSION_SHAPE_BOX.
  • Texture emission_color_texture
  • Texture emission_normal_texture
  • int emission_point_count - The number of emission points if emission_shape is set to EMISSION_SHAPE_POINTS or EMISSION_SHAPE_DIRECTED_POINTS.
  • Texture emission_point_texture
  • EmissionShape emission_shape - Particles will be emitted inside this region. Use EMISSION_SHAPE_* constants for values. Default value: EMISSION_SHAPE_POINT.
  • float emission_sphere_radius - The sphere’s radius if emission_shape is set to EMISSION_SHAPE_SPHERE.
  • bool flag_align_y
  • bool flag_disable_z - If true particles will not move on the z axis. Default value: true for Particles2D, false for Particles.
  • bool flag_rotate_y
  • float flatness
  • Vector3 gravity - Gravity applied to every particle. Default value: (0, 98, 0).
  • float hue_variation - Initial hue variation applied to each particle.
  • Texture hue_variation_curve - Each particle’s hue will vary along this CurveTexture.
  • float hue_variation_random - Hue variation randomness ratio. Default value: 0.
  • float initial_velocity - Initial velocity for each particle.
  • float initial_velocity_random - Initial velocity randomness ratio. Default value: 0.
  • float linear_accel - Linear acceleration applied to each particle.
  • Texture linear_accel_curve - Each particle’s linear acceleration will vary along this CurveTexture.
  • float linear_accel_random - Linear acceleration randomness ratio. Default value: 0.
  • float orbit_velocity - Orbital velocity applied to each particle.
  • Texture orbit_velocity_curve - Each particle’s orbital velocity will vary along this CurveTexture.
  • float orbit_velocity_random - Orbital velocity randomness ratio. Default value: 0.
  • float radial_accel - Radial acceleration applied to each particle.
  • Texture radial_accel_curve - Each particle’s radial acceleration will vary along this CurveTexture.
  • float radial_accel_random - Radial acceleration randomness ratio. Default value: 0.
  • float scale - Initial scale applied to each particle.
  • Texture scale_curve - Each particle’s scale will vary along this CurveTexture.
  • float scale_random - Scale randomness ratio. Default value: 0.
  • float spread - Each particle’s initial direction range from +spread to -spread degrees. Default value: 45.
  • float tangential_accel - Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle’s velocity.
  • Texture tangential_accel_curve - Each particle’s tangential acceleration will vary along this CurveTexture.
  • float tangential_accel_random - Tangential acceleration randomness ratio. Default value: 0.
  • GradientTexture trail_color_modifier - Trail particles’ color will vary along this GradientTexture.
  • int trail_divisor - Emitter will emit amount divided by trail_divisor particles. The remaining particles will be used as trail(s).
  • CurveTexture trail_size_modifier - Trail particles’ size will vary along this CurveTexture.

Enums

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.