#bevy-plugin #bevy #dsp #gamedev #fundsp

bevy_fundsp

将FunDSP集成到Bevy的Bevy插件

4个版本 (破坏性更新)

0.4.0 2023年8月17日
0.3.0 2023年3月7日
0.2.0 2022年11月14日
0.1.0 2022年8月1日

#713 in 音频

MIT/Apache

42KB
592

Bevy FunDSP

Bevy tracking CI Crates.io Crates.io docs.rs

一个第三方Bevy插件,将FunDSP集成到Bevy中。

bevy_fundsp支持与bevy_audiobevy_kira_audiobevy_oddio的集成。

警告:测试声音前请降低音量!

请通过传递设置或乘以低于1.0的常数来降低DSP图的音量,以降低音量。

用法

#![allow(clippy::precedence)]

use {bevy::prelude::*, bevy_fundsp::prelude::*};

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(DspPlugin::default())
        .add_dsp_source(white_noise, SourceType::Dynamic)
        .add_systems(PostStartup, play_noise)
        .run();
}

fn white_noise() -> impl AudioUnit32 {
    white() >> split::<U2>() * 0.2
}

fn play_noise(
    mut commands: Commands,
    mut assets: ResMut<Assets<DspSource>>,
    dsp_manager: Res<DspManager>,
) {
    let source = assets.add(
        dsp_manager
            .get_graph(white_noise)
            .unwrap_or_else(|| panic!("DSP source not found!"))
            .clone(),
    );
    commands.spawn(AudioSourceBundle {
        source,
        ..default()
    });
}

兼容性

bevy_fundsp bevy bevy_kira_audio bevy_oddio fundsp
bevy_main main bevy_main bevy_main main
0.3.0 0.10 0.15 0.4 0.12
0.2.0 0.9 0.13 0.3 0.9
0.1.0 0.8 0.11 0.6

许可

bevy_fundsp主要根据MIT许可和Apache许可证(版本2.0)的条款分发。

有关详细信息,请参阅LICENSE-APACHELICENSE-MIT

致谢

我要感谢FunDSPBevy的作者,使他们能够制作这个插件。

Ko-fi

ko-fi

依赖关系

~28–62MB
~1M SLoC