class_atlastexture.rst 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the AtlasTexture.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_AtlasTexture:
  6. AtlasTexture
  7. ============
  8. **Inherits:** :ref:`Texture2D<class_Texture2D>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  9. Crops out one part of a texture, such as a texture from a texture atlas.
  10. Description
  11. -----------
  12. :ref:`Texture2D<class_Texture2D>` 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:`Texture2D<class_Texture2D>` 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.
  13. \ ``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.
  14. Properties
  15. ----------
  16. +-----------------------------------+-------------------------------------------------------------+-----------------------+
  17. | :ref:`Texture2D<class_Texture2D>` | :ref:`atlas<class_AtlasTexture_property_atlas>` | |
  18. +-----------------------------------+-------------------------------------------------------------+-----------------------+
  19. | :ref:`bool<class_bool>` | :ref:`filter_clip<class_AtlasTexture_property_filter_clip>` | ``false`` |
  20. +-----------------------------------+-------------------------------------------------------------+-----------------------+
  21. | :ref:`Rect2<class_Rect2>` | :ref:`margin<class_AtlasTexture_property_margin>` | ``Rect2(0, 0, 0, 0)`` |
  22. +-----------------------------------+-------------------------------------------------------------+-----------------------+
  23. | :ref:`Rect2<class_Rect2>` | :ref:`region<class_AtlasTexture_property_region>` | ``Rect2(0, 0, 0, 0)`` |
  24. +-----------------------------------+-------------------------------------------------------------+-----------------------+
  25. Property Descriptions
  26. ---------------------
  27. .. _class_AtlasTexture_property_atlas:
  28. - :ref:`Texture2D<class_Texture2D>` **atlas**
  29. +----------+------------------+
  30. | *Setter* | set_atlas(value) |
  31. +----------+------------------+
  32. | *Getter* | get_atlas() |
  33. +----------+------------------+
  34. The texture that contains the atlas. Can be any :ref:`Texture2D<class_Texture2D>` subtype.
  35. ----
  36. .. _class_AtlasTexture_property_filter_clip:
  37. - :ref:`bool<class_bool>` **filter_clip**
  38. +-----------+------------------------+
  39. | *Default* | ``false`` |
  40. +-----------+------------------------+
  41. | *Setter* | set_filter_clip(value) |
  42. +-----------+------------------------+
  43. | *Getter* | has_filter_clip() |
  44. +-----------+------------------------+
  45. If ``true``, clips the area outside of the region to avoid bleeding of the surrounding texture pixels.
  46. ----
  47. .. _class_AtlasTexture_property_margin:
  48. - :ref:`Rect2<class_Rect2>` **margin**
  49. +-----------+-----------------------+
  50. | *Default* | ``Rect2(0, 0, 0, 0)`` |
  51. +-----------+-----------------------+
  52. | *Setter* | set_margin(value) |
  53. +-----------+-----------------------+
  54. | *Getter* | get_margin() |
  55. +-----------+-----------------------+
  56. 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.
  57. ----
  58. .. _class_AtlasTexture_property_region:
  59. - :ref:`Rect2<class_Rect2>` **region**
  60. +-----------+-----------------------+
  61. | *Default* | ``Rect2(0, 0, 0, 0)`` |
  62. +-----------+-----------------------+
  63. | *Setter* | set_region(value) |
  64. +-----------+-----------------------+
  65. | *Getter* | get_region() |
  66. +-----------+-----------------------+
  67. The AtlasTexture's used region.
  68. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  69. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  70. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  71. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  72. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  73. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`