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

455 lines
21 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_Light2D:
Light2D
=======
**Наследует:** :ref:`Node2D<class_Node2D>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
**Наследуется от:** :ref:`DirectionalLight2D<class_DirectionalLight2D>`, :ref:`PointLight2D<class_PointLight2D>`
Излучает свет в 2D-среде.
.. rst-class:: classref-introduction-group
Описание
----------------
Излучает свет в 2D-среде. Свет определяется цветом, значением энергии, режимом (см. константы) и различными другими параметрами (диапазоном и тенями).
.. rst-class:: classref-introduction-group
Обучающие материалы
--------------------------------------
- :doc:`2D свет и тени <../tutorials/2d/2d_lights_and_shadows>`
.. rst-class:: classref-reftable-group
Свойства
----------------
.. table::
:widths: auto
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`BlendMode<enum_Light2D_BlendMode>` | :ref:`blend_mode<class_Light2D_property_blend_mode>` | ``0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`color<class_Light2D_property_color>` | ``Color(1, 1, 1, 1)`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`editor_only<class_Light2D_property_editor_only>` | ``false`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`enabled<class_Light2D_property_enabled>` | ``true`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`energy<class_Light2D_property_energy>` | ``1.0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`range_item_cull_mask<class_Light2D_property_range_item_cull_mask>` | ``1`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`range_layer_max<class_Light2D_property_range_layer_max>` | ``0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`range_layer_min<class_Light2D_property_range_layer_min>` | ``0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`range_z_max<class_Light2D_property_range_z_max>` | ``1024`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`range_z_min<class_Light2D_property_range_z_min>` | ``-1024`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`shadow_color<class_Light2D_property_shadow_color>` | ``Color(0, 0, 0, 0)`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`shadow_enabled<class_Light2D_property_shadow_enabled>` | ``false`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`ShadowFilter<enum_Light2D_ShadowFilter>` | :ref:`shadow_filter<class_Light2D_property_shadow_filter>` | ``0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`shadow_filter_smooth<class_Light2D_property_shadow_filter_smooth>` | ``0.0`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`shadow_item_cull_mask<class_Light2D_property_shadow_item_cull_mask>` | ``1`` |
+------------------------------------------------+----------------------------------------------------------------------------+-----------------------+
.. rst-class:: classref-reftable-group
Методы
------------
.. table::
:widths: auto
+---------------------------+----------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_height<class_Light2D_method_get_height>`\ (\ ) |const| |
+---------------------------+----------------------------------------------------------------------------------------------+
| |void| | :ref:`set_height<class_Light2D_method_set_height>`\ (\ height\: :ref:`float<class_float>`\ ) |
+---------------------------+----------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Перечисления
------------------------
.. _enum_Light2D_ShadowFilter:
.. rst-class:: classref-enumeration
enum **ShadowFilter**: :ref:`🔗<enum_Light2D_ShadowFilter>`
.. _class_Light2D_constant_SHADOW_FILTER_NONE:
.. rst-class:: classref-enumeration-constant
:ref:`ShadowFilter<enum_Light2D_ShadowFilter>` **SHADOW_FILTER_NONE** = ``0``
Фильтр не применяется к карте теней. Это обеспечивает жесткие края теней и является самым быстрым для рендеринга. См. :ref:`shadow_filter<class_Light2D_property_shadow_filter>`.
.. _class_Light2D_constant_SHADOW_FILTER_PCF5:
.. rst-class:: classref-enumeration-constant
:ref:`ShadowFilter<enum_Light2D_ShadowFilter>` **SHADOW_FILTER_PCF5** = ``1``
Фильтрация сближения процентов (5 образцов) применяется к карте теней. Это медленнее по сравнению с жестким рендерингом теней. См. :ref:`shadow_filter<class_Light2D_property_shadow_filter>`.
.. _class_Light2D_constant_SHADOW_FILTER_PCF13:
.. rst-class:: classref-enumeration-constant
:ref:`ShadowFilter<enum_Light2D_ShadowFilter>` **SHADOW_FILTER_PCF13** = ``2``
Фильтрация сближения процентов (13 образцов) применяется к карте теней. Это самый медленный режим фильтрации теней, и его следует использовать экономно. См. :ref:`shadow_filter<class_Light2D_property_shadow_filter>`.
.. rst-class:: classref-item-separator
----
.. _enum_Light2D_BlendMode:
.. rst-class:: classref-enumeration
enum **BlendMode**: :ref:`🔗<enum_Light2D_BlendMode>`
.. _class_Light2D_constant_BLEND_MODE_ADD:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_Light2D_BlendMode>` **BLEND_MODE_ADD** = ``0``
Добавляет значение пикселей, соответствующих Light2D, к значениям пикселей под ним. Это обычное поведение света.
.. _class_Light2D_constant_BLEND_MODE_SUB:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_Light2D_BlendMode>` **BLEND_MODE_SUB** = ``1``
Вычитает значение пикселей, соответствующих Light2D, из значений пикселей под ним, что приводит к эффекту инвертированного света.
.. _class_Light2D_constant_BLEND_MODE_MIX:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_Light2D_BlendMode>` **BLEND_MODE_MIX** = ``2``
Смешиваем значения пикселей, соответствующих Light2D, со значениями пикселей под ним с помощью линейной интерполяции.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания свойств
--------------------------------
.. _class_Light2D_property_blend_mode:
.. rst-class:: classref-property
:ref:`BlendMode<enum_Light2D_BlendMode>` **blend_mode** = ``0`` :ref:`🔗<class_Light2D_property_blend_mode>`
.. rst-class:: classref-property-setget
- |void| **set_blend_mode**\ (\ value\: :ref:`BlendMode<enum_Light2D_BlendMode>`\ )
- :ref:`BlendMode<enum_Light2D_BlendMode>` **get_blend_mode**\ (\ )
Режим смешивания Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_color:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **color** = ``Color(1, 1, 1, 1)`` :ref:`🔗<class_Light2D_property_color>`
.. rst-class:: classref-property-setget
- |void| **set_color**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_color**\ (\ )
:ref:`Color<class_Color>` в Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_editor_only:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **editor_only** = ``false`` :ref:`🔗<class_Light2D_property_editor_only>`
.. rst-class:: classref-property-setget
- |void| **set_editor_only**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_editor_only**\ (\ )
Если ``true``, Light2D будет отображаться только при редактировании сцены.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **enabled** = ``true`` :ref:`🔗<class_Light2D_property_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_enabled**\ (\ )
Если ``true``, Light2D будет излучать свет.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_energy:
.. rst-class:: classref-property
:ref:`float<class_float>` **energy** = ``1.0`` :ref:`🔗<class_Light2D_property_energy>`
.. rst-class:: classref-property-setget
- |void| **set_energy**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_energy**\ (\ )
Значение энергии Light2D. Чем больше значение, тем сильнее свет.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_range_item_cull_mask:
.. rst-class:: classref-property
:ref:`int<class_int>` **range_item_cull_mask** = ``1`` :ref:`🔗<class_Light2D_property_range_item_cull_mask>`
.. rst-class:: classref-property-setget
- |void| **set_item_cull_mask**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_item_cull_mask**\ (\ )
Маска слоя. Только объекты с соответствующим :ref:`CanvasItem.light_mask<class_CanvasItem_property_light_mask>` будут затронуты Light2D. См. также :ref:`shadow_item_cull_mask<class_Light2D_property_shadow_item_cull_mask>`, который влияет на то, какие объекты могут отбрасывать тени.
\ **Примечание:** :ref:`range_item_cull_mask<class_Light2D_property_range_item_cull_mask>` игнорируется :ref:`DirectionalLight2D<class_DirectionalLight2D>`, который всегда будет освещать 2D-узел независимо от :ref:`CanvasItem.light_mask<class_CanvasItem_property_light_mask>` 2D-узла.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_range_layer_max:
.. rst-class:: classref-property
:ref:`int<class_int>` **range_layer_max** = ``0`` :ref:`🔗<class_Light2D_property_range_layer_max>`
.. rst-class:: classref-property-setget
- |void| **set_layer_range_max**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_layer_range_max**\ (\ )
Максимальное значение слоя объектов, на которые влияет Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_range_layer_min:
.. rst-class:: classref-property
:ref:`int<class_int>` **range_layer_min** = ``0`` :ref:`🔗<class_Light2D_property_range_layer_min>`
.. rst-class:: classref-property-setget
- |void| **set_layer_range_min**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_layer_range_min**\ (\ )
Минимальное значение слоя объектов, на которые влияет Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_range_z_max:
.. rst-class:: classref-property
:ref:`int<class_int>` **range_z_max** = ``1024`` :ref:`🔗<class_Light2D_property_range_z_max>`
.. rst-class:: classref-property-setget
- |void| **set_z_range_max**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_z_range_max**\ (\ )
Максимальное значение ``z`` объектов, на которые влияет Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_range_z_min:
.. rst-class:: classref-property
:ref:`int<class_int>` **range_z_min** = ``-1024`` :ref:`🔗<class_Light2D_property_range_z_min>`
.. rst-class:: classref-property-setget
- |void| **set_z_range_min**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_z_range_min**\ (\ )
Минимальное значение ``z`` объектов, на которые влияет Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_shadow_color:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **shadow_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗<class_Light2D_property_shadow_color>`
.. rst-class:: classref-property-setget
- |void| **set_shadow_color**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_shadow_color**\ (\ )
:ref:`Color<class_Color>` теней, отбрасываемых Light2D.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_shadow_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shadow_enabled** = ``false`` :ref:`🔗<class_Light2D_property_shadow_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_shadow_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_shadow_enabled**\ (\ )
Если ``true``, Light2D будет отбрасывать тени.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_shadow_filter:
.. rst-class:: classref-property
:ref:`ShadowFilter<enum_Light2D_ShadowFilter>` **shadow_filter** = ``0`` :ref:`🔗<class_Light2D_property_shadow_filter>`
.. rst-class:: classref-property-setget
- |void| **set_shadow_filter**\ (\ value\: :ref:`ShadowFilter<enum_Light2D_ShadowFilter>`\ )
- :ref:`ShadowFilter<enum_Light2D_ShadowFilter>` **get_shadow_filter**\ (\ )
Тип фильтра теней.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_shadow_filter_smooth:
.. rst-class:: classref-property
:ref:`float<class_float>` **shadow_filter_smooth** = ``0.0`` :ref:`🔗<class_Light2D_property_shadow_filter_smooth>`
.. rst-class:: classref-property-setget
- |void| **set_shadow_smooth**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_shadow_smooth**\ (\ )
Значение сглаживания для теней. Более высокие значения приведут к более мягким теням за счет видимых полос, которые могут появиться при рендеринге теней. :ref:`shadow_filter_smooth<class_Light2D_property_shadow_filter_smooth>` имеет эффект только в том случае, если :ref:`shadow_filter<class_Light2D_property_shadow_filter>` равен :ref:`SHADOW_FILTER_PCF5<class_Light2D_constant_SHADOW_FILTER_PCF5>` или :ref:`SHADOW_FILTER_PCF13<class_Light2D_constant_SHADOW_FILTER_PCF13>`.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_property_shadow_item_cull_mask:
.. rst-class:: classref-property
:ref:`int<class_int>` **shadow_item_cull_mask** = ``1`` :ref:`🔗<class_Light2D_property_shadow_item_cull_mask>`
.. rst-class:: classref-property-setget
- |void| **set_item_shadow_cull_mask**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_item_shadow_cull_mask**\ (\ )
Маска тени. Используется с :ref:`LightOccluder2D<class_LightOccluder2D>` для отбрасывания теней. Только окклюдеры с соответствующим :ref:`CanvasItem.light_mask<class_CanvasItem_property_light_mask>` будут отбрасывать тени. См. также :ref:`range_item_cull_mask<class_Light2D_property_range_item_cull_mask>`, который влияет на то, какие объекты могут *получать* свет.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания метода
------------------------------
.. _class_Light2D_method_get_height:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_height**\ (\ ) |const| :ref:`🔗<class_Light2D_method_get_height>`
Возвращает высоту источника света, которая используется в 2D-нормальном отображении. См. :ref:`PointLight2D.height<class_PointLight2D_property_height>` и :ref:`DirectionalLight2D.height<class_DirectionalLight2D_property_height>`.
.. rst-class:: classref-item-separator
----
.. _class_Light2D_method_set_height:
.. rst-class:: classref-method
|void| **set_height**\ (\ height\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Light2D_method_set_height>`
Устанавливает высоту света, которая используется в 2D-нормальном отображении. См. :ref:`PointLight2D.height<class_PointLight2D_property_height>` и :ref:`DirectionalLight2D.height<class_DirectionalLight2D_property_height>`.
.. |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 (Нет возвращаемого значения.)`