Struct bevy::audio::prelude::SpatialAudioSink
pub struct SpatialAudioSink { /* private fields */ }
Expand description
Asset controlling the playback of a sound, or the locations of its listener and emitter.
// Execution of this system should be controlled by a state or input,
// otherwise it would just trigger every frame.
fn pause(
spatial_audio_sinks: Res<Assets<SpatialAudioSink>>,
audio_controller: Local<Handle<SpatialAudioSink>>,
) {
if let Some(spatial_sink) = spatial_audio_sinks.get(&*audio_controller) {
spatial_sink.set_emitter_position(Vec3::new(1.0, 0.5, 1.0));
}
}
Implementations§
§impl SpatialAudioSink
impl SpatialAudioSink
pub fn set_ears_position(&self, left_position: Vec3, right_position: Vec3)
pub fn set_ears_position(&self, left_position: Vec3, right_position: Vec3)
Set the two ears position.
pub fn set_listener_position(&self, position: Transform, gap: f32)
pub fn set_listener_position(&self, position: Transform, gap: f32)
Set the listener position, with an ear on each side separated by gap
.
pub fn set_emitter_position(&self, position: Vec3)
pub fn set_emitter_position(&self, position: Vec3)
Set the emitter position.
Trait Implementations§
§impl AudioSinkPlayback for SpatialAudioSink
impl AudioSinkPlayback for SpatialAudioSink
§fn set_volume(&self, volume: f32)
fn set_volume(&self, volume: f32)
Changes the volume of the sound. Read more
Auto Trait Implementations§
impl RefUnwindSafe for SpatialAudioSink
impl Send for SpatialAudioSink
impl Sync for SpatialAudioSink
impl Unpin for SpatialAudioSink
impl UnwindSafe for SpatialAudioSink
Blanket Implementations§
§impl<T, U> AsBindGroupShaderType<U> for Twhere
U: ShaderType,
&'a T: for<'a> Into<U>,
impl<T, U> AsBindGroupShaderType<U> for Twhere U: ShaderType, &'a T: for<'a> Into<U>,
§fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
Return the
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.