Initial commit
This commit is contained in:
commit
d109225da6
12 changed files with 5189 additions and 0 deletions
62
src/main.rs
Normal file
62
src/main.rs
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
mod game;
|
||||
mod menu;
|
||||
|
||||
use bevy::{
|
||||
core_pipeline::clear_color::ClearColorConfig,
|
||||
input::{keyboard::KeyCode, Input},
|
||||
prelude::*,
|
||||
render::settings::{WgpuFeatures, WgpuSettings},
|
||||
sprite::MaterialMesh2dBundle,
|
||||
};
|
||||
use bevy_fundsp::prelude::*;
|
||||
use bevy_hanabi::*;
|
||||
use bevy_rapier2d::prelude::*;
|
||||
|
||||
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
|
||||
enum AppState {
|
||||
Setup,
|
||||
Menu,
|
||||
Game,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let mut options = WgpuSettings::default();
|
||||
options
|
||||
.features
|
||||
.set(WgpuFeatures::VERTEX_WRITABLE_STORAGE, true);
|
||||
App::new()
|
||||
.insert_resource(options)
|
||||
.add_state(AppState::Menu)
|
||||
.add_plugins(DefaultPlugins)
|
||||
.add_plugin(DspPlugin)
|
||||
.add_plugin(HanabiPlugin)
|
||||
.add_plugin(RapierPhysicsPlugin::<NoUserData>::pixels_per_meter(64.0))
|
||||
.add_plugin(RapierDebugRenderPlugin::default())
|
||||
.add_plugin(menu::MenuPlugin)
|
||||
.add_plugin(game::GamePlugin)
|
||||
.add_startup_system(setup)
|
||||
.run();
|
||||
}
|
||||
|
||||
fn setup(
|
||||
mut commands: Commands,
|
||||
mut dsp_manager: ResMut<DspManager>,
|
||||
asset_server: Res<AssetServer>,
|
||||
mut app_state: ResMut<State<AppState>>,
|
||||
) {
|
||||
let _font: Handle<Font> = asset_server.load("Cantarell-VF.otf");
|
||||
|
||||
commands.spawn_bundle(Camera2dBundle {
|
||||
camera_2d: Camera2d {
|
||||
clear_color: ClearColorConfig::Custom(Color::BLACK),
|
||||
},
|
||||
..Default::default()
|
||||
});
|
||||
commands.insert_resource(AmbientLight {
|
||||
color: Color::WHITE,
|
||||
brightness: 0.6,
|
||||
});
|
||||
dsp_manager.add_graph(game::sine_wave, 1.0);
|
||||
|
||||
//app_state.replace(AppState::Menu).unwrap();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue