2
0

class_atlastexture.rst 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/3.5/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/3.5/doc/classes/AtlasTexture.xml.
  6. .. _class_AtlasTexture:
  7. AtlasTexture
  8. ============
  9. **Inherits:** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
  10. Crops out one part of a texture, such as a texture from a texture atlas.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. :ref:`Texture<class_Texture>` resource that crops out one part of the :ref:`atlas<class_AtlasTexture_property_atlas>` texture, defined by :ref:`region<class_AtlasTexture_property_region>`. The main use case is cropping out textures from a texture atlas, which is a big texture file that packs multiple smaller textures. Consists of a :ref:`Texture<class_Texture>` for the :ref:`atlas<class_AtlasTexture_property_atlas>`, a :ref:`region<class_AtlasTexture_property_region>` that defines the area of :ref:`atlas<class_AtlasTexture_property_atlas>` to use, and a :ref:`margin<class_AtlasTexture_property_margin>` that defines the border width.
  15. \ **AtlasTexture** cannot be used in an :ref:`AnimatedTexture<class_AnimatedTexture>`, cannot be tiled in nodes such as :ref:`TextureRect<class_TextureRect>`, and does not work properly if used inside of other **AtlasTexture** resources. Multiple **AtlasTexture** resources can be used to crop multiple textures from the atlas. Using a texture atlas helps to optimize video memory costs and render calls compared to using multiple small files.
  16. \ **Note:** AtlasTextures don't support repetition. The :ref:`Texture.FLAG_REPEAT<class_Texture_constant_FLAG_REPEAT>` and :ref:`Texture.FLAG_MIRRORED_REPEAT<class_Texture_constant_FLAG_MIRRORED_REPEAT>` flags are ignored when using an AtlasTexture.
  17. .. rst-class:: classref-reftable-group
  18. Properties
  19. ----------
  20. .. table::
  21. :widths: auto
  22. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  23. | :ref:`Texture<class_Texture>` | :ref:`atlas<class_AtlasTexture_property_atlas>` | |
  24. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  25. | :ref:`bool<class_bool>` | :ref:`filter_clip<class_AtlasTexture_property_filter_clip>` | ``false`` |
  26. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  27. | :ref:`int<class_int>` | flags | ``0`` (overrides :ref:`Texture<class_Texture_property_flags>`) |
  28. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  29. | :ref:`Rect2<class_Rect2>` | :ref:`margin<class_AtlasTexture_property_margin>` | ``Rect2( 0, 0, 0, 0 )`` |
  30. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  31. | :ref:`Rect2<class_Rect2>` | :ref:`region<class_AtlasTexture_property_region>` | ``Rect2( 0, 0, 0, 0 )`` |
  32. +-------------------------------+-------------------------------------------------------------+----------------------------------------------------------------+
  33. .. rst-class:: classref-section-separator
  34. ----
  35. .. rst-class:: classref-descriptions-group
  36. Property Descriptions
  37. ---------------------
  38. .. _class_AtlasTexture_property_atlas:
  39. .. rst-class:: classref-property
  40. :ref:`Texture<class_Texture>` **atlas**
  41. .. rst-class:: classref-property-setget
  42. - void **set_atlas** **(** :ref:`Texture<class_Texture>` value **)**
  43. - :ref:`Texture<class_Texture>` **get_atlas** **(** **)**
  44. The texture that contains the atlas. Can be any :ref:`Texture<class_Texture>` subtype.
  45. .. rst-class:: classref-item-separator
  46. ----
  47. .. _class_AtlasTexture_property_filter_clip:
  48. .. rst-class:: classref-property
  49. :ref:`bool<class_bool>` **filter_clip** = ``false``
  50. .. rst-class:: classref-property-setget
  51. - void **set_filter_clip** **(** :ref:`bool<class_bool>` value **)**
  52. - :ref:`bool<class_bool>` **has_filter_clip** **(** **)**
  53. If ``true``, clips the area outside of the region to avoid bleeding of the surrounding texture pixels.
  54. .. rst-class:: classref-item-separator
  55. ----
  56. .. _class_AtlasTexture_property_margin:
  57. .. rst-class:: classref-property
  58. :ref:`Rect2<class_Rect2>` **margin** = ``Rect2( 0, 0, 0, 0 )``
  59. .. rst-class:: classref-property-setget
  60. - void **set_margin** **(** :ref:`Rect2<class_Rect2>` value **)**
  61. - :ref:`Rect2<class_Rect2>` **get_margin** **(** **)**
  62. The margin around the region. The :ref:`Rect2<class_Rect2>`'s :ref:`Rect2.size<class_Rect2_property_size>` parameter ("w" and "h" in the editor) resizes the texture so it fits within the margin.
  63. .. rst-class:: classref-item-separator
  64. ----
  65. .. _class_AtlasTexture_property_region:
  66. .. rst-class:: classref-property
  67. :ref:`Rect2<class_Rect2>` **region** = ``Rect2( 0, 0, 0, 0 )``
  68. .. rst-class:: classref-property-setget
  69. - void **set_region** **(** :ref:`Rect2<class_Rect2>` value **)**
  70. - :ref:`Rect2<class_Rect2>` **get_region** **(** **)**
  71. The AtlasTexture's used region.
  72. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  73. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  74. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  75. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`