:github_url: hide .. _class_CurveTexture: CurveTexture ============ **繼承:** :ref:`Texture2D` **<** :ref:`Texture` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` 一維紋理,其中像素亮度對應於曲線上的點。 .. rst-class:: classref-introduction-group 說明 ---- A 1D texture where pixel brightness corresponds to points on a unit :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 屬性 ---- .. 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 列舉 ---- .. _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`` 將曲線平均儲存在紅色、綠色和藍色通道上。這會使用更多的顯存,但與唯讀取綠色和藍色值的著色器更相容。 .. _class_CurveTexture_constant_TEXTURE_MODE_RED: .. rst-class:: classref-enumeration-constant :ref:`TextureMode` **TEXTURE_MODE_RED** = ``1`` 僅將曲線儲存在紅色通道中。這可以節省顯存,但某些自訂著色器可能無法使用它。 .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group 屬性說明 -------- .. _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. Should be a unit :ref:`Curve`. .. 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**\ (\ ) 生成紋理時應使用的格式。當將 CurveTexture 作為輸入傳遞給 :ref:`Shader` 時,可能需要調整。 .. 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**\ (\ ) 紋理寬度(單位為圖元)。較大的值能夠更好地表示高頻資料(例如方向的突變),但會增加生成時間和記憶體佔用。 .. |virtual| replace:: :abbr:`virtual (本方法通常需要使用者覆寫才能生效。)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (本方法沒有副作用。不會修改該實例的任何成員變數。)` .. |vararg| replace:: :abbr:`vararg (本方法除了這裡描述的參數外,還可以接受任意數量的參數。)` .. |constructor| replace:: :abbr:`constructor (本方法用於建構一個型別。)` .. |static| replace:: :abbr:`static (本方法無需實例即可呼叫,因此可以直接使用類別名稱呼叫。)` .. |operator| replace:: :abbr:`operator (本方法描述將本型別作為左運算元時可用的有效運算子。)` .. |bitfield| replace:: :abbr:`BitField (此值是由下列旗標組成的位元遮罩整數。)` .. |void| replace:: :abbr:`void (無回傳值。)`