mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-05 14:10:19 +03:00
447 lines
23 KiB
ReStructuredText
447 lines
23 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. meta::
|
||
:keywords: sound, sfx
|
||
|
||
.. _class_AudioStreamPlayer2D:
|
||
|
||
AudioStreamPlayer2D
|
||
===================
|
||
|
||
**Наследует:** :ref:`Node2D<class_Node2D>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
||
|
||
Воспроизводит позиционный звук в 2D-пространстве.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Описание
|
||
----------------
|
||
|
||
Воспроизводит звук, который ослабевает с расстоянием до слушателя.
|
||
|
||
По умолчанию звук слышен из центра экрана. Это можно изменить, добавив узел :ref:`AudioListener2D<class_AudioListener2D>` к сцене и включив его, вызвав :ref:`AudioListener2D.make_current()<class_AudioListener2D_method_make_current>` для него.
|
||
|
||
См. также :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`, чтобы воспроизвести звук непозиционно.
|
||
|
||
\ **Примечание:** Скрытие узла **AudioStreamPlayer2D** не отключает его аудиовыход. Чтобы временно отключить аудиовыход **AudioStreamPlayer2D**, установите :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` на очень низкое значение, например ``-100`` (которое не слышно человеческому слуху).
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Обучающие материалы
|
||
--------------------------------------
|
||
|
||
- :doc:`Аудиопотоки <../tutorials/audio/audio_streams>`
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Свойства
|
||
----------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`int<class_int>` | :ref:`area_mask<class_AudioStreamPlayer2D_property_area_mask>` | ``1`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`attenuation<class_AudioStreamPlayer2D_property_attenuation>` | ``1.0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`bool<class_bool>` | :ref:`autoplay<class_AudioStreamPlayer2D_property_autoplay>` | ``false`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`StringName<class_StringName>` | :ref:`bus<class_AudioStreamPlayer2D_property_bus>` | ``&"Master"`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`max_distance<class_AudioStreamPlayer2D_property_max_distance>` | ``2000.0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`int<class_int>` | :ref:`max_polyphony<class_AudioStreamPlayer2D_property_max_polyphony>` | ``1`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`panning_strength<class_AudioStreamPlayer2D_property_panning_strength>` | ``1.0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`pitch_scale<class_AudioStreamPlayer2D_property_pitch_scale>` | ``1.0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`PlaybackType<enum_AudioServer_PlaybackType>` | :ref:`playback_type<class_AudioStreamPlayer2D_property_playback_type>` | ``0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`bool<class_bool>` | :ref:`playing<class_AudioStreamPlayer2D_property_playing>` | ``false`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`AudioStream<class_AudioStream>` | :ref:`stream<class_AudioStreamPlayer2D_property_stream>` | |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`bool<class_bool>` | :ref:`stream_paused<class_AudioStreamPlayer2D_property_stream_paused>` | ``false`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` | ``0.0`` |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
| :ref:`float<class_float>` | :ref:`volume_linear<class_AudioStreamPlayer2D_property_volume_linear>` | |
|
||
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Методы
|
||
------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`get_playback_position<class_AudioStreamPlayer2D_method_get_playback_position>`\ (\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer2D_method_get_stream_playback>`\ (\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`has_stream_playback<class_AudioStreamPlayer2D_method_has_stream_playback>`\ (\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`play<class_AudioStreamPlayer2D_method_play>`\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`seek<class_AudioStreamPlayer2D_method_seek>`\ (\ to_position\: :ref:`float<class_float>`\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`stop<class_AudioStreamPlayer2D_method_stop>`\ (\ ) |
|
||
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Сигналы
|
||
--------------
|
||
|
||
.. _class_AudioStreamPlayer2D_signal_finished:
|
||
|
||
.. rst-class:: classref-signal
|
||
|
||
**finished**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_signal_finished>`
|
||
|
||
Издается, когда прекращается воспроизведение звука.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания свойств
|
||
--------------------------------
|
||
|
||
.. _class_AudioStreamPlayer2D_property_area_mask:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`int<class_int>` **area_mask** = ``1`` :ref:`🔗<class_AudioStreamPlayer2D_property_area_mask>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_area_mask**\ (\ value\: :ref:`int<class_int>`\ )
|
||
- :ref:`int<class_int>` **get_area_mask**\ (\ )
|
||
|
||
Определяет, какие слои :ref:`Area2D<class_Area2D>` влияют на звук для эффектов реверберации и аудиошины. Области можно использовать для перенаправления :ref:`AudioStream<class_AudioStream>`\ s так, чтобы они воспроизводились на определенной аудиошине. Примером того, как это можно использовать, является создание области «воды», чтобы звуки, воспроизводимые в воде, перенаправлялись через аудиошину, чтобы они звучали так, как будто они воспроизводятся под водой.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_attenuation:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **attenuation** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_attenuation>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_attenuation**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_attenuation**\ (\ )
|
||
|
||
Громкость звука уменьшается с расстоянием, причем показатель степени равен этому показателю.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_autoplay:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **autoplay** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_autoplay>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_autoplay**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_autoplay_enabled**\ (\ )
|
||
|
||
Если ``true``, звук воспроизводится при добавлении в дерево сцен.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_bus:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`StringName<class_StringName>` **bus** = ``&"Master"`` :ref:`🔗<class_AudioStreamPlayer2D_property_bus>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_bus**\ (\ value\: :ref:`StringName<class_StringName>`\ )
|
||
- :ref:`StringName<class_StringName>` **get_bus**\ (\ )
|
||
|
||
Шина, на которой воспроизводится этот звук.
|
||
|
||
\ **Примечание:** При установке этого свойства имейте в виду, что проверка соответствия данного имени существующей шине не выполняется. Это связано с тем, что макеты аудиошин могут быть загружены после установки этого свойства. Если данное имя не может быть разрешено во время выполнения, оно вернется к ``"Master"``.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_max_distance:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **max_distance** = ``2000.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_max_distance>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_max_distance**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_max_distance**\ (\ )
|
||
|
||
Максимальное расстояние при котором можно услышать аудио.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_max_polyphony:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`int<class_int>` **max_polyphony** = ``1`` :ref:`🔗<class_AudioStreamPlayer2D_property_max_polyphony>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_max_polyphony**\ (\ value\: :ref:`int<class_int>`\ )
|
||
- :ref:`int<class_int>` **get_max_polyphony**\ (\ )
|
||
|
||
Максимальное количество звуков, которые этот узел может воспроизводить одновременно. Воспроизведение дополнительных звуков после достижения этого значения приведет к отключению самых старых звуков.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_panning_strength:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **panning_strength** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_panning_strength>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_panning_strength**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_panning_strength**\ (\ )
|
||
|
||
Масштабирует силу панорамирования для этого узла, умножая базу :ref:`ProjectSettings.audio/general/2d_panning_strength<class_ProjectSettings_property_audio/general/2d_panning_strength>` на этот коэффициент. Более высокие значения будут панорамировать аудио слева направо более драматично, чем более низкие значения.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_pitch_scale:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **pitch_scale** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_pitch_scale>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_pitch_scale**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_pitch_scale**\ (\ )
|
||
|
||
Высота тона и темп звука как множитель частоты дискретизации аудиосэмпла.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_playback_type:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`PlaybackType<enum_AudioServer_PlaybackType>` **playback_type** = ``0`` :ref:`🔗<class_AudioStreamPlayer2D_property_playback_type>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_playback_type**\ (\ value\: :ref:`PlaybackType<enum_AudioServer_PlaybackType>`\ )
|
||
- :ref:`PlaybackType<enum_AudioServer_PlaybackType>` **get_playback_type**\ (\ )
|
||
|
||
**Экспериментальное:** Это свойство может быть изменено или удалено в будущих версиях.
|
||
|
||
Тип воспроизведения потокового проигрывателя. Если установлено значение, отличное от значения по умолчанию, будет принудительно выбран этот тип воспроизведения.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_playing:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **playing** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_playing>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_playing**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_playing**\ (\ )
|
||
|
||
Если ``true``, звук воспроизводится или поставлен в очередь на воспроизведение (см. :ref:`play()<class_AudioStreamPlayer2D_method_play>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_stream:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`AudioStream<class_AudioStream>` **stream** :ref:`🔗<class_AudioStreamPlayer2D_property_stream>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_stream**\ (\ value\: :ref:`AudioStream<class_AudioStream>`\ )
|
||
- :ref:`AudioStream<class_AudioStream>` **get_stream**\ (\ )
|
||
|
||
Объект :ref:`AudioStream<class_AudioStream>` для воспроизведения.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_stream_paused:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **stream_paused** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_stream_paused>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_stream_paused**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **get_stream_paused**\ (\ )
|
||
|
||
Если ``true``, воспроизведение приостанавливается. Вы можете возобновить его, установив :ref:`stream_paused<class_AudioStreamPlayer2D_property_stream_paused>` на ``false``.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_volume_db:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **volume_db** = ``0.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_volume_db>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_volume_db**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_volume_db**\ (\ )
|
||
|
||
Базовая громкость до затухания, в децибелах.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_property_volume_linear:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **volume_linear** :ref:`🔗<class_AudioStreamPlayer2D_property_volume_linear>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_volume_linear**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_volume_linear**\ (\ )
|
||
|
||
Базовый объем до затухания, как линейное значение.
|
||
|
||
\ **Примечание:** Этот член изменяет :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` для удобства. Возвращаемое значение эквивалентно результату :ref:`@GlobalScope.db_to_linear()<class_@GlobalScope_method_db_to_linear>` для :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>`. Установка этого члена эквивалентна установке :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` на результат :ref:`@GlobalScope.linear_to_db()<class_@GlobalScope_method_linear_to_db>` для значения.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания метода
|
||
------------------------------
|
||
|
||
.. _class_AudioStreamPlayer2D_method_get_playback_position:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`float<class_float>` **get_playback_position**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_get_playback_position>`
|
||
|
||
Возвращает позицию в :ref:`AudioStream<class_AudioStream>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_method_get_stream_playback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`AudioStreamPlayback<class_AudioStreamPlayback>` **get_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_get_stream_playback>`
|
||
|
||
Возвращает объект :ref:`AudioStreamPlayback<class_AudioStreamPlayback>`, связанный с этим **AudioStreamPlayer2D**.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_method_has_stream_playback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **has_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_has_stream_playback>`
|
||
|
||
Возвращает, может ли :ref:`AudioStreamPlayer<class_AudioStreamPlayer>` вернуть объект :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` или нет.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_method_play:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **play**\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_play>`
|
||
|
||
Ставит звук в очередь для воспроизведения в следующем физическом кадре, начиная с указанной позиции ``from_position`` в секундах.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_method_seek:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **seek**\ (\ to_position\: :ref:`float<class_float>`\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_seek>`
|
||
|
||
Устанавливает позицию, с которой будет воспроизводиться звук, в секундах.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AudioStreamPlayer2D_method_stop:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **stop**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_stop>`
|
||
|
||
Остановка звука.
|
||
|
||
.. |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 (Нет возвращаемого значения.)`
|