Files
godot-docs-l10n/classes/ru/class_noisetexture2d.rst

293 lines
18 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_NoiseTexture2D:
NoiseTexture2D
==============
**Наследует:** :ref:`Texture2D<class_Texture2D>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
2D-текстура, заполненная шумом, созданным объектом :ref:`Noise<class_Noise>`.
.. rst-class:: classref-introduction-group
Описание
----------------
Использует библиотеку :ref:`FastNoiseLite<class_FastNoiseLite>` или другие генераторы шума для заполнения данных текстуры нужного вам размера. **NoiseTexture2D** также может генерировать текстуры карты нормалей.
Класс использует :ref:`Thread<class_Thread>` для внутренней генерации данных текстуры, поэтому :ref:`Texture2D.get_image()<class_Texture2D_method_get_image>` может возвращать ``null``, если процесс генерации еще не завершен. В этом случае вам нужно дождаться генерации текстуры, прежде чем обращаться к изображению и сгенерированным байтовым данным:
::
var texture = NoiseTexture2D.new()
texture.noise = FastNoiseLite.new()
await texture.changed
var image = texture.get_image()
var data = image.get_data()
.. rst-class:: classref-reftable-group
Свойства
----------------
.. table::
:widths: auto
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`as_normal_map<class_NoiseTexture2D_property_as_normal_map>` | ``false`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`bump_strength<class_NoiseTexture2D_property_bump_strength>` | ``8.0`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`Gradient<class_Gradient>` | :ref:`color_ramp<class_NoiseTexture2D_property_color_ramp>` | |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`generate_mipmaps<class_NoiseTexture2D_property_generate_mipmaps>` | ``true`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`height<class_NoiseTexture2D_property_height>` | ``512`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`in_3d_space<class_NoiseTexture2D_property_in_3d_space>` | ``false`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`invert<class_NoiseTexture2D_property_invert>` | ``false`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`Noise<class_Noise>` | :ref:`noise<class_NoiseTexture2D_property_noise>` | |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`normalize<class_NoiseTexture2D_property_normalize>` | ``true`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | resource_local_to_scene | ``false`` (overrides :ref:`Resource<class_Resource_property_resource_local_to_scene>`) |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`seamless<class_NoiseTexture2D_property_seamless>` | ``false`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`seamless_blend_skirt<class_NoiseTexture2D_property_seamless_blend_skirt>` | ``0.1`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`width<class_NoiseTexture2D_property_width>` | ``512`` |
+---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания свойств
--------------------------------
.. _class_NoiseTexture2D_property_as_normal_map:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **as_normal_map** = ``false`` :ref:`🔗<class_NoiseTexture2D_property_as_normal_map>`
.. rst-class:: classref-property-setget
- |void| **set_as_normal_map**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_normal_map**\ (\ )
Если ``true``, результирующая текстура содержит карту нормалей, созданную из исходного шума, интерпретируемого как карта рельефа.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_bump_strength:
.. rst-class:: classref-property
:ref:`float<class_float>` **bump_strength** = ``8.0`` :ref:`🔗<class_NoiseTexture2D_property_bump_strength>`
.. rst-class:: classref-property-setget
- |void| **set_bump_strength**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_bump_strength**\ (\ )
Сила карт рельефа, используемых в этой текстуре. Более высокое значение сделает карты рельефа больше, а более низкое значение сделает их мягче.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_color_ramp:
.. rst-class:: classref-property
:ref:`Gradient<class_Gradient>` **color_ramp** :ref:`🔗<class_NoiseTexture2D_property_color_ramp>`
.. rst-class:: classref-property-setget
- |void| **set_color_ramp**\ (\ value\: :ref:`Gradient<class_Gradient>`\ )
- :ref:`Gradient<class_Gradient>` **get_color_ramp**\ (\ )
:ref:`Gradient<class_Gradient>`, который используется для сопоставления яркости каждого пикселя со значением цвета.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_generate_mipmaps:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **generate_mipmaps** = ``true`` :ref:`🔗<class_NoiseTexture2D_property_generate_mipmaps>`
.. rst-class:: classref-property-setget
- |void| **set_generate_mipmaps**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_generating_mipmaps**\ (\ )
Определяет, генерируются ли mip-карты для этой текстуры. Включение этого параметра приводит к уменьшению сглаживания текстур на расстоянии, за счет увеличения использования памяти примерно на 33% и увеличения времени генерации текстуры шума.
\ **Примечание:** :ref:`generate_mipmaps<class_NoiseTexture2D_property_generate_mipmaps>` требует включения фильтрации mip-карт на материале с использованием **NoiseTexture2D**, чтобы иметь эффект.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_height:
.. rst-class:: classref-property
:ref:`int<class_int>` **height** = ``512`` :ref:`🔗<class_NoiseTexture2D_property_height>`
.. rst-class:: classref-property-setget
- |void| **set_height**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_height**\ (\ )
Высота сгенерированной текстуры (в пикселях).
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_in_3d_space:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **in_3d_space** = ``false`` :ref:`🔗<class_NoiseTexture2D_property_in_3d_space>`
.. rst-class:: classref-property-setget
- |void| **set_in_3d_space**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_in_3d_space**\ (\ )
Определяет, вычисляется ли шумовое изображение в трехмерном пространстве. Может привести к снижению контрастности.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_invert:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **invert** = ``false`` :ref:`🔗<class_NoiseTexture2D_property_invert>`
.. rst-class:: classref-property-setget
- |void| **set_invert**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_invert**\ (\ )
Если ``true``, инвертирует текстуру шума. Белый становится черным, черный становится белым.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_noise:
.. rst-class:: classref-property
:ref:`Noise<class_Noise>` **noise** :ref:`🔗<class_NoiseTexture2D_property_noise>`
.. rst-class:: classref-property-setget
- |void| **set_noise**\ (\ value\: :ref:`Noise<class_Noise>`\ )
- :ref:`Noise<class_Noise>` **get_noise**\ (\ )
Экземпляр объекта :ref:`Noise<class_Noise>`.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_normalize:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **normalize** = ``true`` :ref:`🔗<class_NoiseTexture2D_property_normalize>`
.. rst-class:: classref-property-setget
- |void| **set_normalize**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_normalized**\ (\ )
Если ``true``, шумовое изображение, поступающее от генератора шума, нормализуется в диапазоне от ``0.0`` до ``1.0``.
Отключение нормализации может повлиять на контрастность и позволит создавать неповторяющиеся мозаичные текстуры шума.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_seamless:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **seamless** = ``false`` :ref:`🔗<class_NoiseTexture2D_property_seamless>`
.. rst-class:: classref-property-setget
- |void| **set_seamless**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_seamless**\ (\ )
Если ``true``, бесшовная текстура запрашивается из ресурса :ref:`Noise<class_Noise>`.
\ **Примечание:** Бесшовные текстуры шума могут генерироваться дольше и/или иметь меньшую контрастность по сравнению с небесшовным шумом в зависимости от используемого ресурса :ref:`Noise<class_Noise>`. Это связано с тем, что некоторые реализации используют более высокие измерения для создания бесшовного шума.
\ **Примечание:** Реализация :ref:`FastNoiseLite<class_FastNoiseLite>` по умолчанию использует резервный путь для бесшовной генерации. Если использовать :ref:`width<class_NoiseTexture2D_property_width>` или :ref:`height<class_NoiseTexture2D_property_height>` ниже, чем по умолчанию, вам может потребоваться увеличить :ref:`seamless_blend_skirt<class_NoiseTexture2D_property_seamless_blend_skirt>`, чтобы сделать бесшовное смешивание более эффективным.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_seamless_blend_skirt:
.. rst-class:: classref-property
:ref:`float<class_float>` **seamless_blend_skirt** = ``0.1`` :ref:`🔗<class_NoiseTexture2D_property_seamless_blend_skirt>`
.. rst-class:: classref-property-setget
- |void| **set_seamless_blend_skirt**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_seamless_blend_skirt**\ (\ )
Используется для реализации по умолчанию/резервного варианта создания бесшовной текстуры. Определяет расстояние, на котором смешиваются швы. Высокие значения могут привести к снижению детализации и контрастности. Дополнительные сведения см. в разделе :ref:`Noise<class_Noise>`.
\ **Примечание:** Если вы используете :ref:`width<class_NoiseTexture2D_property_width>` или :ref:`height<class_NoiseTexture2D_property_height>` ниже, чем по умолчанию, вам может потребоваться увеличить :ref:`seamless_blend_skirt<class_NoiseTexture2D_property_seamless_blend_skirt>`, чтобы сделать бесшовное смешивание более эффективным.
.. rst-class:: classref-item-separator
----
.. _class_NoiseTexture2D_property_width:
.. rst-class:: classref-property
:ref:`int<class_int>` **width** = ``512`` :ref:`🔗<class_NoiseTexture2D_property_width>`
.. rst-class:: classref-property-setget
- |void| **set_width**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_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 (Нет возвращаемого значения.)`