class_curvetexture.rst 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  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/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CurveTexture.xml.
  6. .. _class_CurveTexture:
  7. CurveTexture
  8. ============
  9. **Inherits:** :ref:`Texture2D<class_Texture2D>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. A 1D texture where pixel brightness corresponds to points on a curve.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. A 1D texture where pixel brightness corresponds to points on a :ref:`Curve<class_Curve>` resource, either in grayscale or in red. This visual representation simplifies the task of saving curves as image files.
  15. If you need to store up to 3 curves within a single texture, use :ref:`CurveXYZTexture<class_CurveXYZTexture>` instead. See also :ref:`GradientTexture1D<class_GradientTexture1D>` and :ref:`GradientTexture2D<class_GradientTexture2D>`.
  16. .. rst-class:: classref-reftable-group
  17. Properties
  18. ----------
  19. .. table::
  20. :widths: auto
  21. +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+
  22. | :ref:`Curve<class_Curve>` | :ref:`curve<class_CurveTexture_property_curve>` | |
  23. +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+
  24. | :ref:`bool<class_bool>` | resource_local_to_scene | ``false`` (overrides :ref:`Resource<class_Resource_property_resource_local_to_scene>`) |
  25. +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+
  26. | :ref:`TextureMode<enum_CurveTexture_TextureMode>` | :ref:`texture_mode<class_CurveTexture_property_texture_mode>` | ``0`` |
  27. +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+
  28. | :ref:`int<class_int>` | :ref:`width<class_CurveTexture_property_width>` | ``256`` |
  29. +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+
  30. .. rst-class:: classref-section-separator
  31. ----
  32. .. rst-class:: classref-descriptions-group
  33. Enumerations
  34. ------------
  35. .. _enum_CurveTexture_TextureMode:
  36. .. rst-class:: classref-enumeration
  37. enum **TextureMode**: :ref:`🔗<enum_CurveTexture_TextureMode>`
  38. .. _class_CurveTexture_constant_TEXTURE_MODE_RGB:
  39. .. rst-class:: classref-enumeration-constant
  40. :ref:`TextureMode<enum_CurveTexture_TextureMode>` **TEXTURE_MODE_RGB** = ``0``
  41. Store the curve equally across the red, green and blue channels. This uses more video memory, but is more compatible with shaders that only read the green and blue values.
  42. .. _class_CurveTexture_constant_TEXTURE_MODE_RED:
  43. .. rst-class:: classref-enumeration-constant
  44. :ref:`TextureMode<enum_CurveTexture_TextureMode>` **TEXTURE_MODE_RED** = ``1``
  45. Store the curve only in the red channel. This saves video memory, but some custom shaders may not be able to work with this.
  46. .. rst-class:: classref-section-separator
  47. ----
  48. .. rst-class:: classref-descriptions-group
  49. Property Descriptions
  50. ---------------------
  51. .. _class_CurveTexture_property_curve:
  52. .. rst-class:: classref-property
  53. :ref:`Curve<class_Curve>` **curve** :ref:`🔗<class_CurveTexture_property_curve>`
  54. .. rst-class:: classref-property-setget
  55. - |void| **set_curve**\ (\ value\: :ref:`Curve<class_Curve>`\ )
  56. - :ref:`Curve<class_Curve>` **get_curve**\ (\ )
  57. The :ref:`Curve<class_Curve>` that is rendered onto the texture.
  58. .. rst-class:: classref-item-separator
  59. ----
  60. .. _class_CurveTexture_property_texture_mode:
  61. .. rst-class:: classref-property
  62. :ref:`TextureMode<enum_CurveTexture_TextureMode>` **texture_mode** = ``0`` :ref:`🔗<class_CurveTexture_property_texture_mode>`
  63. .. rst-class:: classref-property-setget
  64. - |void| **set_texture_mode**\ (\ value\: :ref:`TextureMode<enum_CurveTexture_TextureMode>`\ )
  65. - :ref:`TextureMode<enum_CurveTexture_TextureMode>` **get_texture_mode**\ (\ )
  66. The format the texture should be generated with. When passing a CurveTexture as an input to a :ref:`Shader<class_Shader>`, this may need to be adjusted.
  67. .. rst-class:: classref-item-separator
  68. ----
  69. .. _class_CurveTexture_property_width:
  70. .. rst-class:: classref-property
  71. :ref:`int<class_int>` **width** = ``256`` :ref:`🔗<class_CurveTexture_property_width>`
  72. .. rst-class:: classref-property-setget
  73. - |void| **set_width**\ (\ value\: :ref:`int<class_int>`\ )
  74. - :ref:`int<class_int>` **get_width**\ (\ )
  75. The width of the texture (in pixels). Higher values make it possible to represent high-frequency data better (such as sudden direction changes), at the cost of increased generation time and memory usage.
  76. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  77. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  78. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  79. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  80. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  81. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  82. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  83. .. |void| replace:: :abbr:`void (No return value.)`