From 9777c4b6b42dfd41a4a4dc8016857ba80b6c552c Mon Sep 17 00:00:00 2001 From: lisk77 Date: Thu, 27 Nov 2025 00:16:41 +0100 Subject: [PATCH] feat(example): added sound system example --- examples/hello_sound.rs | 23 +++++++++++++++++++++++ res/sounds/hit.ogg | Bin 0 -> 6870 bytes 2 files changed, 23 insertions(+) create mode 100644 examples/hello_sound.rs create mode 100644 res/sounds/hit.ogg diff --git a/examples/hello_sound.rs b/examples/hello_sound.rs new file mode 100644 index 0000000..791e89d --- /dev/null +++ b/examples/hello_sound.rs @@ -0,0 +1,23 @@ +use comet::prelude::*; + +fn setup(app: &mut App, _renderer: &mut Renderer2D) { + app.load_audio("startup", "res/sounds/hit.ogg"); + app.play_audio("startup", true); // second parameter loops the sound + + // here the float indicated the volume percentage + // in the standard backend for audio in comet (kira) 0.0 is equal to -20dB and 1.0 to 0dB + app.set_volume("startup", 1.0); +} + +#[allow(unused_variables)] +fn update(app: &mut App, renderer: &mut Renderer2D, dt: f32) { + // in this example, update_audio doesnt do anything because the kira audio system + // doesnt need any update + app.update_audio(dt); +} + +fn main() { + App::new() + .with_title("Comet Audio Example") + .run::(setup, update); +} diff --git a/res/sounds/hit.ogg b/res/sounds/hit.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a5cd99532f56bf337889275a7cd6985f60c28376 GIT binary patch literal 6870 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 literal 0 HcmV?d00001