Light2D.xml 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="Light2D" inherits="Node2D" category="Core" version="3.1.2">
  3. <brief_description>
  4. Casts light in a 2D environment.
  5. </brief_description>
  6. <description>
  7. Casts light in a 2D environment. Light is defined by a (usually grayscale) texture, a color, an energy value, a mode (see constants), and various other parameters (range and shadows-related). Note that Light2D can be used as a mask.
  8. </description>
  9. <tutorials>
  10. <link>http://docs.godotengine.org/en/3.1/tutorials/2d/2d_lights_and_shadows.html</link>
  11. </tutorials>
  12. <methods>
  13. </methods>
  14. <members>
  15. <member name="color" type="Color" setter="set_color" getter="get_color">
  16. The Light2D's [Color].
  17. </member>
  18. <member name="editor_only" type="bool" setter="set_editor_only" getter="is_editor_only">
  19. If [code]true[/code], Light2D will only appear when editing the scene. Default value: [code]false[/code].
  20. </member>
  21. <member name="enabled" type="bool" setter="set_enabled" getter="is_enabled">
  22. If [code]true[/code], Light2D will emit light. Default value: [code]true[/code].
  23. </member>
  24. <member name="energy" type="float" setter="set_energy" getter="get_energy">
  25. The Light2D's energy value. The larger the value, the stronger the light.
  26. </member>
  27. <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="Light2D.Mode">
  28. The Light2D's mode. See MODE_* constants for values.
  29. </member>
  30. <member name="offset" type="Vector2" setter="set_texture_offset" getter="get_texture_offset">
  31. The offset of the Light2D's [code]texture[/code].
  32. </member>
  33. <member name="range_height" type="float" setter="set_height" getter="get_height">
  34. The height of the Light2D. Used with 2D normal mapping.
  35. </member>
  36. <member name="range_item_cull_mask" type="int" setter="set_item_cull_mask" getter="get_item_cull_mask">
  37. The layer mask. Only objects with a matching mask will be affected by the Light2D.
  38. </member>
  39. <member name="range_layer_max" type="int" setter="set_layer_range_max" getter="get_layer_range_max">
  40. Maximum layer value of objects that are affected by the Light2D. Default value: [code]0[/code].
  41. </member>
  42. <member name="range_layer_min" type="int" setter="set_layer_range_min" getter="get_layer_range_min">
  43. Minimum layer value of objects that are affected by the Light2D. Default value: [code]0[/code].
  44. </member>
  45. <member name="range_z_max" type="int" setter="set_z_range_max" getter="get_z_range_max">
  46. Maximum [code]z[/code] value of objects that are affected by the Light2D. Default value: [code]1024[/code].
  47. </member>
  48. <member name="range_z_min" type="int" setter="set_z_range_min" getter="get_z_range_min">
  49. Minimum [code]z[/code] value of objects that are affected by the Light2D. Default value: [code]-1024[/code].
  50. </member>
  51. <member name="shadow_buffer_size" type="int" setter="set_shadow_buffer_size" getter="get_shadow_buffer_size">
  52. Shadow buffer size. Default value: [code]2048[/code].
  53. </member>
  54. <member name="shadow_color" type="Color" setter="set_shadow_color" getter="get_shadow_color">
  55. [Color] of shadows cast by the Light2D.
  56. </member>
  57. <member name="shadow_enabled" type="bool" setter="set_shadow_enabled" getter="is_shadow_enabled">
  58. If [code]true[/code], the Light2D will cast shadows. Default value: [code]false[/code].
  59. </member>
  60. <member name="shadow_filter" type="int" setter="set_shadow_filter" getter="get_shadow_filter" enum="Light2D.ShadowFilter">
  61. Shadow filter type. Use [enum Light2D.ShadowFilter] constants as values. Default value: [code]SHADOW_FILTER_NONE[/code].
  62. </member>
  63. <member name="shadow_filter_smooth" type="float" setter="set_shadow_smooth" getter="get_shadow_smooth">
  64. Smoothing value for shadows.
  65. </member>
  66. <member name="shadow_gradient_length" type="float" setter="set_shadow_gradient_length" getter="get_shadow_gradient_length">
  67. Smooth shadow gradient length.
  68. </member>
  69. <member name="shadow_item_cull_mask" type="int" setter="set_item_shadow_cull_mask" getter="get_item_shadow_cull_mask">
  70. The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders with a matching shadow mask will cast shadows.
  71. </member>
  72. <member name="texture" type="Texture" setter="set_texture" getter="get_texture">
  73. [Texture] used for the Light2D's appearance.
  74. </member>
  75. <member name="texture_scale" type="float" setter="set_texture_scale" getter="get_texture_scale">
  76. The [code]texture[/code]'s scale factor.
  77. </member>
  78. </members>
  79. <constants>
  80. <constant name="MODE_ADD" value="0" enum="Mode">
  81. Adds the value of pixels corresponding to the Light2D to the values of pixels under it. This is the common behavior of a light.
  82. </constant>
  83. <constant name="MODE_SUB" value="1" enum="Mode">
  84. Subtracts the value of pixels corresponding to the Light2D to the values of pixels under it, resulting in inversed light effect.
  85. </constant>
  86. <constant name="MODE_MIX" value="2" enum="Mode">
  87. Mix the value of pixels corresponding to the Light2D to the values of pixels under it by linear interpolation.
  88. </constant>
  89. <constant name="MODE_MASK" value="3" enum="Mode">
  90. The light texture of the Light2D is used as a mask, hiding or revealing parts of the screen underneath depending on the value of each pixel of the light (mask) texture.
  91. </constant>
  92. <constant name="SHADOW_FILTER_NONE" value="0" enum="ShadowFilter">
  93. No filter applies to the shadow map. See [member shadow_filter].
  94. </constant>
  95. <constant name="SHADOW_FILTER_PCF3" value="1" enum="ShadowFilter">
  96. Percentage closer filtering (3 samples) applies to the shadow map. See [member shadow_filter].
  97. </constant>
  98. <constant name="SHADOW_FILTER_PCF5" value="2" enum="ShadowFilter">
  99. Percentage closer filtering (5 samples) applies to the shadow map. See [member shadow_filter].
  100. </constant>
  101. <constant name="SHADOW_FILTER_PCF7" value="3" enum="ShadowFilter">
  102. Percentage closer filtering (7 samples) applies to the shadow map. See [member shadow_filter].
  103. </constant>
  104. <constant name="SHADOW_FILTER_PCF9" value="4" enum="ShadowFilter">
  105. Percentage closer filtering (9 samples) applies to the shadow map. See [member shadow_filter].
  106. </constant>
  107. <constant name="SHADOW_FILTER_PCF13" value="5" enum="ShadowFilter">
  108. Percentage closer filtering (13 samples) applies to the shadow map. See [member shadow_filter].
  109. </constant>
  110. </constants>
  111. </class>