diff --git a/Cargo.toml b/Cargo.toml index 6b2c7abcdd..4f2d9a5916 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,14 +5,14 @@ authors = ["Carter Anderson "] edition = "2018" [features] -default = ["wgpu"] +default = ["wgpu", "winit"] [dependencies] legion = { path = "bevy_legion", features = ["serialize"] } wgpu = { git = "https://github.com/gfx-rs/wgpu-rs.git", rev = "a7b0d5ae5bc0934439ef559ed145e93f0117c39a", optional = true } bitflags = "1.0" glam = "0.8.6" -winit = "0.22.0" +winit = { version = "0.22.0", optional = true } zerocopy = "0.3" log = "0.4" env_logger = "0.7" diff --git a/src/app/app.rs b/src/app/app.rs index 054d1b90ce..70ac5e7908 100644 --- a/src/app/app.rs +++ b/src/app/app.rs @@ -1,21 +1,11 @@ -use winit::{ - event, - event::WindowEvent, - event_loop::{ControlFlow, EventLoop}, -}; - +use crate::{app::AppBuilder, core::Time, render::renderer::Renderer}; use legion::prelude::*; -use crate::{ - app::AppBuilder, - core::{Time, Window}, - render::renderer::Renderer, -}; - pub struct App { pub universe: Universe, pub world: World, pub resources: Resources, + pub run: Option>, pub renderer: Option>, pub schedule: Schedule, } @@ -26,6 +16,7 @@ impl App { world: World, schedule: Schedule, resources: Resources, + run: Option>, renderer: Option>, ) -> App { App { @@ -33,6 +24,7 @@ impl App { world, schedule, renderer, + run, resources, } } @@ -41,7 +33,7 @@ impl App { AppBuilder::new() } - fn update(&mut self) { + pub fn update(&mut self) { if let Some(mut time) = self.resources.get_mut::