Sprite2D.xml 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="Sprite2D" inherits="Node2D" version="4.0">
  3. <brief_description>
  4. General-purpose sprite node.
  5. </brief_description>
  6. <description>
  7. A node that displays a 2D texture. The texture displayed can be a region from a larger atlas texture, or a frame from a sprite sheet animation.
  8. </description>
  9. <tutorials>
  10. <link title="Instancing Demo">https://godotengine.org/asset-library/asset/148</link>
  11. </tutorials>
  12. <methods>
  13. <method name="get_rect" qualifiers="const">
  14. <return type="Rect2" />
  15. <description>
  16. Returns a [Rect2] representing the Sprite2D's boundary in local coordinates. Can be used to detect if the Sprite2D was clicked. Example:
  17. [codeblocks]
  18. [gdscript]
  19. func _input(event):
  20. if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT:
  21. if get_rect().has_point(to_local(event.position)):
  22. print("A click!")
  23. [/gdscript]
  24. [csharp]
  25. public override void _Input(InputEvent inputEvent)
  26. {
  27. if (inputEvent is InputEventMouseButton inputEventMouse)
  28. {
  29. if (inputEventMouse.Pressed &amp;&amp; inputEventMouse.ButtonIndex == (int)ButtonList.Left)
  30. {
  31. if (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))
  32. {
  33. GD.Print("A click!");
  34. }
  35. }
  36. }
  37. }
  38. [/csharp]
  39. [/codeblocks]
  40. </description>
  41. </method>
  42. <method name="is_pixel_opaque" qualifiers="const">
  43. <return type="bool" />
  44. <argument index="0" name="pos" type="Vector2" />
  45. <description>
  46. Returns [code]true[/code], if the pixel at the given position is opaque and [code]false[/code] in other case.
  47. [b]Note:[/b] It also returns [code]false[/code], if the sprite's texture is [code]null[/code] or if the given position is invalid.
  48. </description>
  49. </method>
  50. </methods>
  51. <members>
  52. <member name="centered" type="bool" setter="set_centered" getter="is_centered" default="true">
  53. If [code]true[/code], texture is centered.
  54. </member>
  55. <member name="flip_h" type="bool" setter="set_flip_h" getter="is_flipped_h" default="false">
  56. If [code]true[/code], texture is flipped horizontally.
  57. </member>
  58. <member name="flip_v" type="bool" setter="set_flip_v" getter="is_flipped_v" default="false">
  59. If [code]true[/code], texture is flipped vertically.
  60. </member>
  61. <member name="frame" type="int" setter="set_frame" getter="get_frame" default="0">
  62. Current frame to display from sprite sheet. [member hframes] or [member vframes] must be greater than 1.
  63. </member>
  64. <member name="frame_coords" type="Vector2i" setter="set_frame_coords" getter="get_frame_coords" default="Vector2i(0, 0)">
  65. Coordinates of the frame to display from sprite sheet. This is as an alias for the [member frame] property. [member hframes] or [member vframes] must be greater than 1.
  66. </member>
  67. <member name="hframes" type="int" setter="set_hframes" getter="get_hframes" default="1">
  68. The number of columns in the sprite sheet.
  69. </member>
  70. <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)">
  71. The texture's drawing offset.
  72. </member>
  73. <member name="region_enabled" type="bool" setter="set_region_enabled" getter="is_region_enabled" default="false">
  74. If [code]true[/code], texture is cut from a larger atlas texture. See [member region_rect].
  75. </member>
  76. <member name="region_filter_clip_enabled" type="bool" setter="set_region_filter_clip_enabled" getter="is_region_filter_clip_enabled" default="false">
  77. If [code]true[/code], the outermost pixels get blurred out. [member region_enabled] must be [code]true[/code].
  78. </member>
  79. <member name="region_rect" type="Rect2" setter="set_region_rect" getter="get_region_rect" default="Rect2(0, 0, 0, 0)">
  80. The region of the atlas texture to display. [member region_enabled] must be [code]true[/code].
  81. </member>
  82. <member name="texture" type="Texture2D" setter="set_texture" getter="get_texture">
  83. [Texture2D] object to draw.
  84. </member>
  85. <member name="vframes" type="int" setter="set_vframes" getter="get_vframes" default="1">
  86. The number of rows in the sprite sheet.
  87. </member>
  88. </members>
  89. <signals>
  90. <signal name="frame_changed">
  91. <description>
  92. Emitted when the [member frame] changes.
  93. </description>
  94. </signal>
  95. <signal name="texture_changed">
  96. <description>
  97. Emitted when the [member texture] changes.
  98. </description>
  99. </signal>
  100. </signals>
  101. </class>