Mercurial > touhou
changeset 751:eab7dde1164f
examples: Add music playback to the menu example
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Tue, 25 Feb 2020 19:37:19 +0100 |
parents | 31897f650d2d |
children | 5e5e7136ac92 |
files | Cargo.toml examples/menu.rs |
diffstat | 2 files changed, 16 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/Cargo.toml +++ b/Cargo.toml @@ -17,3 +17,4 @@ bitflags = "1" luminance = "0.38" luminance-glfw = { version = "0.12", default-features = false, features = ["log-errors"] } luminance-derive = "0.5" +ears = "0.8"
--- a/examples/menu.rs +++ b/examples/menu.rs @@ -1,3 +1,4 @@ +use ears::{Music, AudioController}; use luminance::blending::{Equation, Factor}; use luminance::context::GraphicsContext; use luminance::pipeline::{BoundTexture, PipelineState}; @@ -113,6 +114,20 @@ fn main() { image }); + let music_filename = directory.join("bgm").join("th06_01.wav"); + let music_filename = music_filename.to_str().expect("non-UTF-8 music filename"); + let music = match Music::new(music_filename) { + Ok(mut music) => { + music.set_looping(true); + music.play(); + music + } + Err(err) => { + eprintln!("Impossible to open or play music file: {}", err); + return; + } + }; + let mut surface = GlfwSurface::new(WindowDim::Windowed(640, 480), "Touhou", WindowOpt::default()).expect("GLFW window"); let image = jpeg_thread.join().expect("image loading");