:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CurveTexture.xml. .. _class_CurveTexture: CurveTexture ============ **Inherits:** :ref:`Texture2D` **<** :ref:`Texture` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` A 1D texture where pixel brightness corresponds to points on a curve. .. rst-class:: classref-introduction-group Description ----------- A 1D texture where pixel brightness corresponds to points on a :ref:`Curve` resource, either in grayscale or in red. This visual representation simplifies the task of saving curves as image files. If you need to store up to 3 curves within a single texture, use :ref:`CurveXYZTexture` instead. See also :ref:`GradientTexture1D` and :ref:`GradientTexture2D`. .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`Curve` | :ref:`curve` | | +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`bool` | resource_local_to_scene | ``false`` (overrides :ref:`Resource`) | +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`TextureMode` | :ref:`texture_mode` | ``0`` | +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`width` | ``256`` | +---------------------------------------------------+---------------------------------------------------------------+----------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Enumerations ------------ .. _enum_CurveTexture_TextureMode: .. rst-class:: classref-enumeration enum **TextureMode**: :ref:`🔗` .. _class_CurveTexture_constant_TEXTURE_MODE_RGB: .. rst-class:: classref-enumeration-constant :ref:`TextureMode` **TEXTURE_MODE_RGB** = ``0`` 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. .. _class_CurveTexture_constant_TEXTURE_MODE_RED: .. rst-class:: classref-enumeration-constant :ref:`TextureMode` **TEXTURE_MODE_RED** = ``1`` Store the curve only in the red channel. This saves video memory, but some custom shaders may not be able to work with this. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_CurveTexture_property_curve: .. rst-class:: classref-property :ref:`Curve` **curve** :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_curve**\ (\ value\: :ref:`Curve`\ ) - :ref:`Curve` **get_curve**\ (\ ) The :ref:`Curve` that is rendered onto the texture. .. rst-class:: classref-item-separator ---- .. _class_CurveTexture_property_texture_mode: .. rst-class:: classref-property :ref:`TextureMode` **texture_mode** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_texture_mode**\ (\ value\: :ref:`TextureMode`\ ) - :ref:`TextureMode` **get_texture_mode**\ (\ ) The format the texture should be generated with. When passing a CurveTexture as an input to a :ref:`Shader`, this may need to be adjusted. .. rst-class:: classref-item-separator ---- .. _class_CurveTexture_property_width: .. rst-class:: classref-property :ref:`int` **width** = ``256`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_width**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_width**\ (\ ) 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. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` .. |void| replace:: :abbr:`void (No return value.)`