reckfellENGINE

AudioStreamPlayer2D

Источник звука с панорамой и затуханием в мире 2D.

На этой странице
class AudioStreamPlayer2DReckfellSharpНаследует Entity2D

AudioStreamPlayer2D учитывает положение относительно слушателя в своём мире и viewport. Явный AudioListener2D задаёт точку слуха; без него используется центр видимой области viewport. Для участия viewport должен принимать звук 2D.

MaxDistance использует единицы мира 2D, обычно пиксели. Панорама зависит также от viewport и его масштаба. Запуск и пространственное обновление обслуживаются физическим шагом. Коллизии сами по себе не создают акустическую окклюзию.

Практический пример.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

AudioStreamPlayer2DКонструктор
# AudioStreamPlayer2D
C#
public AudioStreamPlayer2D();

Свойства14

AreaMaskСвойство
# AreaMask
C#
public uint AreaMask { get; set; }

Определяет, какие слои Area2D влияют на звук для эффектов реверберации и аудиошины. Области можно использовать для перенаправления AudioStreams так, чтобы они воспроизводились на определенной аудиошине. Примером того, как это можно использовать, является создание области «воды», чтобы звуки, воспроизводимые в воде, перенаправлялись через аудиошину, чтобы они звучали так, как будто они воспроизводятся под водой.

AttenuationСвойство
# Attenuation
C#
public float Attenuation { get; set; }

Громкость звука уменьшается с расстоянием, причем показатель степени равен этому показателю.

AutoplayСвойство
# Autoplay
C#
public bool Autoplay { get; set; }

Если true, звук воспроизводится при добавлении в дерево сцен.

BusСвойство
# Bus
C#
public StringName Bus { get; set; }

Шина, на которой воспроизводится этот звук. Примечание: При установке этого свойства имейте в виду, что проверка соответствия данного имени существующей шине не выполняется. Это связано с тем, что макеты аудиошин могут быть загружены после установки этого свойства. Если данное имя не может быть разрешено во время выполнения, оно вернется к "Master".

MaxDistanceСвойство
# MaxDistance
C#
public float MaxDistance { get; set; }

Максимальное расстояние при котором можно услышать аудио.

MaxPolyphonyСвойство
# MaxPolyphony
C#
public int MaxPolyphony { get; set; }

Максимальное число одновременных голосов этого плеера. Новый Play при превышении лимита вытесняет самый старый голос. Используйте положительное значение; для одного управляемого музыкального потока задайте 1.

PanningStrengthСвойство
# PanningStrength
C#
public float PanningStrength { get; set; }

Масштабирует силу панорамирования для этого узла, умножая базу ProjectSettings.audio/general/2d_panning_strength на этот коэффициент. Более высокие значения будут панорамировать аудио слева направо более драматично, чем более низкие значения.

PitchScaleСвойство
# PitchScale
C#
public float PitchScale { get; set; }

Высота тона и темп звука как множитель частоты дискретизации аудиосэмпла.

PlaybackTypeСвойство
# PlaybackType
C#
public AudioServer.PlaybackType PlaybackType { get; set; }

Тип воспроизведения потокового проигрывателя. Если установлено значение, отличное от значения по умолчанию, будет принудительно выбран этот тип воспроизведения.

PlayingСвойство
# Playing
C#
public bool Playing { get; set; }

Если true, звук воспроизводится или поставлен в очередь на воспроизведение (см. AudioStreamPlayer2D.Play).

StreamСвойство
# Stream
C#
public AudioStream Stream { get; set; }

Объект AudioStream для воспроизведения.

StreamPausedСвойство
# StreamPaused
C#
public bool StreamPaused { get; set; }

Приостанавливает существующие голоса или возобновляет их. Без голосов предварительная команда не сохраняется. В режиме Stream пауза делает IsPlaying() ложным, сохраняя HasStreamPlayback().

VolumeDbСвойство
# VolumeDb
C#
public float VolumeDb { get; set; }

Базовая громкость до затухания, в децибелах.

VolumeLinearСвойство
# VolumeLinear
C#
public float VolumeLinear { get; set; }

Базовый объем до затухания, как линейное значение. Примечание: Этот член изменяет AudioStreamPlayer2D.VolumeDb для удобства. Возвращаемое значение эквивалентно результату @GlobalScope.db_to_linear для AudioStreamPlayer2D.VolumeDb. Установка этого члена эквивалентна установке AudioStreamPlayer2D.VolumeDb на результат @GlobalScope.linear_to_db для значения.

Методы34

GetAreaMaskuint
# GetAreaMask
C#
public uint GetAreaMask();
Возвращает uint
GetAttenuationfloat
# GetAttenuation
C#
public float GetAttenuation();
Возвращает float
GetBusStringName
# GetBus
C#
public StringName GetBus();
Возвращает StringName
GetMaxDistancefloat
# GetMaxDistance
C#
public float GetMaxDistance();
Возвращает float
GetMaxPolyphonyint
# GetMaxPolyphony
C#
public int GetMaxPolyphony();
Возвращает int
GetPanningStrengthfloat
# GetPanningStrength
C#
public float GetPanningStrength();
Возвращает float
GetPitchScalefloat
# GetPitchScale
C#
public float GetPitchScale();
Возвращает float
GetPlaybackPositionfloat
# GetPlaybackPosition
C#
public float GetPlaybackPosition();

Возвращает позицию последнего созданного голоса в секундах, а не общее время всех голосов. Между смешиваниями значение может меняться ступенчато. Для одного потока со скоростью 1 оценку можно уточнить временем после последнего mix; паузу, перемотку и задержку вывода учитывайте отдельно.

Возвращает float
GetPlaybackTypeAudioServer.PlaybackType
# GetPlaybackType
C#
public AudioServer.PlaybackType GetPlaybackType();
Возвращает AudioServer.PlaybackType
GetStreamAudioStream
# GetStream
C#
public AudioStream GetStream();
Возвращает AudioStream
GetStreamPausedbool
# GetStreamPaused
C#
public bool GetStreamPaused();
Возвращает bool
GetStreamPlaybackAudioStreamPlayback
# GetStreamPlayback
C#
public AudioStreamPlayback GetStreamPlayback();

Возвращает объект AudioStreamPlayback, связанный с этим AudioStreamPlayer2D.

Возвращает AudioStreamPlayback
GetVolumeDbfloat
# GetVolumeDb
C#
public float GetVolumeDb();
Возвращает float
GetVolumeLinearfloat
# GetVolumeLinear
C#
public float GetVolumeLinear();
Возвращает float
HasStreamPlaybackbool
# HasStreamPlayback
C#
public bool HasStreamPlayback();

Проверяет, хранит ли плеер объекты воспроизведения, включая приостановленные. Это не признак слышимого сигнала: mute, расстояние или пауза могут давать тишину.

Возвращает bool
IsAutoplayEnabledbool
# IsAutoplayEnabled
C#
public bool IsAutoplayEnabled();
Возвращает bool
IsPlayingbool
# IsPlaying
C#
public bool IsPlaying();

В режиме Stream возвращает true для активно играющего голоса. На паузе false; для наличия сохранённого воспроизведения проверяйте HasStreamPlayback() или StreamPaused. Не отсекайте этим методом команду возобновления.

Возвращает bool
Playvoid
# Play
C#
public void Play(float fromPosition = 0f);

Ставит звук в очередь для воспроизведения в следующем физическом кадре, начиная с указанной позиции from_position в секундах.

Параметры
ИмяТипПо умолчанию
fromPositionfloat0f
Seekvoid
# Seek
C#
public void Seek(float toPosition);

Перезапускает плеер с заданной позиции в секундах только при активном воспроизведении. Останавливает прежние голоса и запускает новый с позиции. В режиме Stream на паузе или остановке ничего не делает. Для перемотки с сохранением паузы явно сохраните флаг, вызовите Stop(), Play(position) и восстановите StreamPaused.

Параметры
ИмяТипПо умолчанию
toPositionfloat—
SetAreaMaskvoid
# SetAreaMask
C#
public void SetAreaMask(uint mask);
Параметры
ИмяТипПо умолчанию
maskuint—
SetAttenuationvoid
# SetAttenuation
C#
public void SetAttenuation(float curve);
Параметры
ИмяТипПо умолчанию
curvefloat—
SetAutoplayvoid
# SetAutoplay
C#
public void SetAutoplay(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetBusvoid
# SetBus
C#
public void SetBus(StringName bus);
Параметры
ИмяТипПо умолчанию
busStringName—
SetMaxDistancevoid
# SetMaxDistance
C#
public void SetMaxDistance(float pixels);
Параметры
ИмяТипПо умолчанию
pixelsfloat—
SetMaxPolyphonyvoid
# SetMaxPolyphony
C#
public void SetMaxPolyphony(int maxPolyphony);
Параметры
ИмяТипПо умолчанию
maxPolyphonyint—
SetPanningStrengthvoid
# SetPanningStrength
C#
public void SetPanningStrength(float panningStrength);
Параметры
ИмяТипПо умолчанию
panningStrengthfloat—
SetPitchScalevoid
# SetPitchScale
C#
public void SetPitchScale(float pitchScale);
Параметры
ИмяТипПо умолчанию
pitchScalefloat—
SetPlaybackTypevoid
# SetPlaybackType
C#
public void SetPlaybackType(AudioServer.PlaybackType playbackType);
Параметры
ИмяТипПо умолчанию
playbackTypeAudioServer.PlaybackType—
SetPlayingvoid
# SetPlaying
C#
public void SetPlaying(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetStreamvoid
# SetStream
C#
public void SetStream(AudioStream stream);
Параметры
ИмяТипПо умолчанию
streamAudioStream—
SetStreamPausedvoid
# SetStreamPaused
C#
public void SetStreamPaused(bool pause);
Параметры
ИмяТипПо умолчанию
pausebool—
SetVolumeDbvoid
# SetVolumeDb
C#
public void SetVolumeDb(float volumeDb);
Параметры
ИмяТипПо умолчанию
volumeDbfloat—
SetVolumeLinearvoid
# SetVolumeLinear
C#
public void SetVolumeLinear(float volumeLinear);
Параметры
ИмяТипПо умолчанию
volumeLinearfloat—
Stopvoid
# Stop
C#
public void Stop();

Остановка звука.

Сигналы и события1

FinishedСобытие
# Finished
C#
public event Action Finished;

Выдаётся, когда при обновлении удалён один или несколько естественно завершившихся голосов. Другие голоса могут ещё играть. Stop() и вытеснение по лимиту не означают естественное завершение; цикл не выдаёт этот сигнал на каждом круге.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.