Particles2D.xml 4.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="Particles2D" inherits="Node2D" category="Core" version="3.1">
  3. <brief_description>
  4. 2D particle emitter.
  5. </brief_description>
  6. <description>
  7. 2D particle node used to create a variety of particle systems and effects. [code]Particles2D[/code] features an emitter that generates some number of particles at a given rate.
  8. Use the [code]process_material[/code] property to add a [ParticlesMaterial] to configure particle appearance and behavior. Alternatively, you can add a [ShaderMaterial] which will be applied to all particles.
  9. </description>
  10. <tutorials>
  11. </tutorials>
  12. <demos>
  13. </demos>
  14. <methods>
  15. <method name="capture_rect" qualifiers="const">
  16. <return type="Rect2">
  17. </return>
  18. <description>
  19. Returns a rectangle containing the positions of all existing particles.
  20. </description>
  21. </method>
  22. <method name="restart">
  23. <return type="void">
  24. </return>
  25. <description>
  26. Restarts all the existing particles.
  27. </description>
  28. </method>
  29. </methods>
  30. <members>
  31. <member name="amount" type="int" setter="set_amount" getter="get_amount">
  32. Number of particles emitted in one emission cycle.
  33. </member>
  34. <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="Particles2D.DrawOrder">
  35. Particle draw order. Uses [code]DRAW_ORDER_*[/code] values. Default value: [code]DRAW_ORDER_INDEX[/code].
  36. </member>
  37. <member name="emitting" type="bool" setter="set_emitting" getter="is_emitting">
  38. If [code]true[/code], particles are being emitted. Default value: [code]true[/code].
  39. </member>
  40. <member name="explosiveness" type="float" setter="set_explosiveness_ratio" getter="get_explosiveness_ratio">
  41. How rapidly particles in an emission cycle are emitted. If greater than [code]0[/code], there will be a gap in emissions before the next cycle begins. Default value: [code]0[/code].
  42. </member>
  43. <member name="fixed_fps" type="int" setter="set_fixed_fps" getter="get_fixed_fps">
  44. The particle system's frame rate is fixed to a value. For instance, changing the value to 2 will make the particles render at 2 frames per second. Note this does not slow down the particle system itself.
  45. </member>
  46. <member name="fract_delta" type="bool" setter="set_fractional_delta" getter="get_fractional_delta">
  47. If [code]true[/code], results in fractional delta calculation which has a smoother particles display effect. Default value: [code]true[/code]
  48. </member>
  49. <member name="lifetime" type="float" setter="set_lifetime" getter="get_lifetime">
  50. Amount of time each particle will exist. Default value: [code]1[/code].
  51. </member>
  52. <member name="local_coords" type="bool" setter="set_use_local_coordinates" getter="get_use_local_coordinates">
  53. If [code]true[/code], particles use the parent node's coordinate space. If [code]false[/code], they use global coordinates. Default value: [code]true[/code].
  54. </member>
  55. <member name="normal_map" type="Texture" setter="set_normal_map" getter="get_normal_map">
  56. Normal map to be used for the [code]texture[/code] property.
  57. </member>
  58. <member name="one_shot" type="bool" setter="set_one_shot" getter="get_one_shot">
  59. If [code]true[/code], only one emission cycle occurs. If set [code]true[/code] during a cycle, emission will stop at the cycle's end. Default value: [code]false[/code].
  60. </member>
  61. <member name="preprocess" type="float" setter="set_pre_process_time" getter="get_pre_process_time">
  62. Particle system starts as if it had already run for this many seconds.
  63. </member>
  64. <member name="process_material" type="Material" setter="set_process_material" getter="get_process_material">
  65. [Material] for processing particles. Can be a [ParticlesMaterial] or a [ShaderMaterial].
  66. </member>
  67. <member name="randomness" type="float" setter="set_randomness_ratio" getter="get_randomness_ratio">
  68. Emission lifetime randomness ratio. Default value: [code]0[/code].
  69. </member>
  70. <member name="speed_scale" type="float" setter="set_speed_scale" getter="get_speed_scale">
  71. Particle system's running speed scaling ratio. Default value: [code]1[/code]. A value of [code]0[/code] can be used to pause the particles.
  72. </member>
  73. <member name="texture" type="Texture" setter="set_texture" getter="get_texture">
  74. Particle texture. If [code]null[/code] particles will be squares.
  75. </member>
  76. <member name="visibility_rect" type="Rect2" setter="set_visibility_rect" getter="get_visibility_rect">
  77. Editor visibility helper.
  78. </member>
  79. </members>
  80. <constants>
  81. <constant name="DRAW_ORDER_INDEX" value="0" enum="DrawOrder">
  82. Particles are drawn in the order emitted.
  83. </constant>
  84. <constant name="DRAW_ORDER_LIFETIME" value="1" enum="DrawOrder">
  85. Particles are drawn in order of remaining lifetime.
  86. </constant>
  87. </constants>
  88. </class>