2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2018-06-14 17:37:51 +02:00
<class name= "ParticlesMaterial" inherits= "Material" category= "Core" version= "3.0.4" >
2017-09-12 22:42:36 +02:00
<brief_description >
2017-10-03 21:30:32 +02:00
Particle properties for [Particles] and [Particles2D] nodes.
2017-09-12 22:42:36 +02:00
</brief_description>
<description >
2017-10-03 21:30:32 +02:00
ParticlesMaterial defines particle properties and behavior. It is used in the [code]process_material[/code] 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.
2017-09-12 22:42:36 +02:00
</description>
<tutorials >
</tutorials>
<demos >
</demos>
<methods >
</methods>
<members >
2017-09-13 08:49:40 +02:00
<member name= "angle" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Initial rotation applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "angle_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's rotation will be animated along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "angle_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Rotation randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "angular_velocity" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Initial angular velocity applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "angular_velocity_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's angular velocity will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "angular_velocity_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Angular velocity randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_loop" type= "bool" setter= "set_flag" getter= "get_flag" >
2017-10-03 21:30:32 +02:00
If [code]true[/code] animation will loop. Default value: [code]false[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_offset" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Particle animation offset.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_offset_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's animation offset will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_offset_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Animation offset randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_speed" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Particle animation speed.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_speed_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's animation speed will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "anim_speed_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Animation speed randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "color" type= "Color" setter= "set_color" getter= "get_color" >
2017-10-03 21:30:32 +02:00
Each particle's initial color. If the [Particle2D]'s [code]texture[/code] is defined, it will be multiplied by this color.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "color_ramp" type= "Texture" setter= "set_color_ramp" getter= "get_color_ramp" >
2017-10-03 21:30:32 +02:00
Each particle's color will vary along this [GradientTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "damping" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
The rate at which particles lose velocity.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "damping_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Damping will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "damping_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Damping randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_box_extents" type= "Vector3" setter= "set_emission_box_extents" getter= "get_emission_box_extents" >
2017-10-03 21:30:32 +02:00
The box's extents if [code]emission_shape[/code] is set to [code]EMISSION_SHAPE_BOX[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_color_texture" type= "Texture" setter= "set_emission_color_texture" getter= "get_emission_color_texture" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_normal_texture" type= "Texture" setter= "set_emission_normal_texture" getter= "get_emission_normal_texture" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_point_count" type= "int" setter= "set_emission_point_count" getter= "get_emission_point_count" >
2017-10-03 21:30:32 +02:00
The number of emission points if [code]emission_shape[/code] is set to [code]EMISSION_SHAPE_POINTS[/code] or [code]EMISSION_SHAPE_DIRECTED_POINTS[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_point_texture" type= "Texture" setter= "set_emission_point_texture" getter= "get_emission_point_texture" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_shape" type= "int" setter= "set_emission_shape" getter= "get_emission_shape" enum= "ParticlesMaterial.EmissionShape" >
2017-10-03 21:30:32 +02:00
Particles will be emitted inside this region. Use [code]EMISSION_SHAPE_*[/code] constants for values. Default value: [code]EMISSION_SHAPE_POINT[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "emission_sphere_radius" type= "float" setter= "set_emission_sphere_radius" getter= "get_emission_sphere_radius" >
2017-10-03 21:30:32 +02:00
The sphere's radius if [code]emission_shape[/code] is set to [code]EMISSION_SHAPE_SPHERE[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "flag_align_y" type= "bool" setter= "set_flag" getter= "get_flag" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "flag_disable_z" type= "bool" setter= "set_flag" getter= "get_flag" >
2017-10-03 21:30:32 +02:00
If [code]true[/code] particles will not move on the z axis. Default value: [code]true[/code] for [Particles2D], [code]false[/code] for [Particles].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "flag_rotate_y" type= "bool" setter= "set_flag" getter= "get_flag" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "flatness" type= "float" setter= "set_flatness" getter= "get_flatness" >
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "gravity" type= "Vector3" setter= "set_gravity" getter= "get_gravity" >
2017-10-03 21:30:32 +02:00
Gravity applied to every particle. Default value: [code](0, 98, 0)[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "hue_variation" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Initial hue variation applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "hue_variation_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's hue will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "hue_variation_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Hue variation randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "initial_velocity" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Initial velocity for each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "initial_velocity_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Initial velocity randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "linear_accel" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Linear acceleration applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "linear_accel_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's linear acceleration will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "linear_accel_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Linear acceleration randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "orbit_velocity" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Orbital velocity applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "orbit_velocity_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's orbital velocity will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "orbit_velocity_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Orbital velocity randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "radial_accel" type= "float" setter= "set_param" getter= "get_param" >
2018-03-21 17:44:09 +01:00
Radial acceleration applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "radial_accel_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's radial acceleration will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "radial_accel_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Radial acceleration randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "scale" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Initial scale applied to each particle.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "scale_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's scale will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "scale_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Scale randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "spread" type= "float" setter= "set_spread" getter= "get_spread" >
2017-10-03 21:30:32 +02:00
Each particle's initial direction range from [code]+spread[/code] to [code]-spread[/code] degrees. Default value: [code]45[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "tangential_accel" type= "float" setter= "set_param" getter= "get_param" >
2017-10-03 21:30:32 +02:00
Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity.
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "tangential_accel_curve" type= "Texture" setter= "set_param_texture" getter= "get_param_texture" >
2017-10-03 21:30:32 +02:00
Each particle's tangential acceleration will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "tangential_accel_random" type= "float" setter= "set_param_randomness" getter= "get_param_randomness" >
2017-10-03 21:30:32 +02:00
Tangential acceleration randomness ratio. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "trail_color_modifier" type= "GradientTexture" setter= "set_trail_color_modifier" getter= "get_trail_color_modifier" >
2017-10-03 21:30:32 +02:00
Trail particles' color will vary along this [GradientTexture].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "trail_divisor" type= "int" setter= "set_trail_divisor" getter= "get_trail_divisor" >
2017-10-03 21:30:32 +02:00
Emitter will emit [code]amount[/code] divided by [code]trail_divisor[/code] particles. The remaining particles will be used as trail(s).
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "trail_size_modifier" type= "CurveTexture" setter= "set_trail_size_modifier" getter= "get_trail_size_modifier" >
2017-10-03 21:30:32 +02:00
Trail particles' size will vary along this [CurveTexture].
2017-09-12 22:42:36 +02:00
</member>
</members>
<constants >
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_INITIAL_LINEAR_VELOCITY" value= "0" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set initial velocity properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_ANGULAR_VELOCITY" value= "1" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set angular velocity properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_ORBIT_VELOCITY" value= "2" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set orbital_velocity properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_LINEAR_ACCEL" value= "3" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set linear acceleration properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_RADIAL_ACCEL" value= "4" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set radial acceleration properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_TANGENTIAL_ACCEL" value= "5" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set tangential acceleration properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_DAMPING" value= "6" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set damping properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_ANGLE" value= "7" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set angle properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_SCALE" value= "8" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set scale properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_HUE_VARIATION" value= "9" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set hue_variation properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_ANIM_SPEED" value= "10" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set animation speed properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_ANIM_OFFSET" value= "11" enum= "Parameter" >
2017-10-03 21:30:32 +02:00
Use with [method set_param], [method set_param_randomness], and [method set_param_texture] to set animation offset properties.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "PARAM_MAX" value= "12" enum= "Parameter" >
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_ALIGN_Y_TO_VELOCITY" value= "0" enum= "Flags" >
2017-10-03 21:30:32 +02:00
Use with [method set_flag] to set [member flag_align_y].
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_ROTATE_Y" value= "1" enum= "Flags" >
2017-10-03 21:30:32 +02:00
Use with [method set_flag] to set [member flag_rotate_y]
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_MAX" value= "4" enum= "Flags" >
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "EMISSION_SHAPE_POINT" value= "0" enum= "EmissionShape" >
2017-10-03 21:30:32 +02:00
All particles will be emitted from a single point.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "EMISSION_SHAPE_SPHERE" value= "1" enum= "EmissionShape" >
2017-10-03 21:30:32 +02:00
Particles will be emitted in the volume of a sphere.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "EMISSION_SHAPE_BOX" value= "2" enum= "EmissionShape" >
2017-10-03 21:30:32 +02:00
Particles will be emitted in the volume of a box.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "EMISSION_SHAPE_POINTS" value= "3" enum= "EmissionShape" >
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "EMISSION_SHAPE_DIRECTED_POINTS" value= "4" enum= "EmissionShape" >
2017-09-12 22:42:36 +02:00
</constant>
</constants>
</class>