diff options
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/src/main.rs b/src/main.rs index 6601982..3e8fb0b 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,11 +1,6 @@ #![deny(unsafe_code)] use crate::error::*; -use crate::graphics::model::Model; -use crate::graphics::texture::Texture; -use crate::graphics::permanent::{ - PermanentGraphicsState, GraphicsStateForReinit -}; -use crate::graphics::render_state::RenderState; +use crate::graphics::{ Permanent, ForReinit, Render, Model, Texture }; use crate::graphics::scene::generate_scene_commands; use crate::graphics::window_dressing::{ WindowDressing, N_SIMULTANEOUS_FRAMES @@ -34,10 +29,10 @@ mod shader_data; struct Surreality { - permanent: RefCell<Option<PermanentGraphicsState>>, - for_reinit: RefCell<Option<GraphicsStateForReinit>>, + permanent: RefCell<Option<Permanent>>, + for_reinit: RefCell<Option<ForReinit>>, window_dressing: RefCell<Option<WindowDressing>>, - render_state: RefCell<Option<RenderState>>, + render: RefCell<Option<Render>>, texture: RefCell<Option<Texture>>, is_minimized: bool, is_reinit_queued: bool, @@ -55,7 +50,7 @@ impl Surreality { permanent: RefCell::new(None), for_reinit: RefCell::new(None), window_dressing: RefCell::new(None), - render_state: RefCell::new(None), + render: RefCell::new(None), texture: RefCell::new(None), is_minimized: false, is_reinit_queued: false, @@ -70,20 +65,20 @@ impl Surreality { #[allow(unsafe_code)] fn init(&mut self, event_loop: &ActiveEventLoop) -> Result<()> { let (permanent, for_reinit, enable_anisotropy, enable_swapchain) - = PermanentGraphicsState::new(event_loop)?; + = Permanent::new(event_loop)?; let (texture, mip_count) = Texture::new(&permanent)?; if enable_swapchain.0 { let window_dressing = WindowDressing::new(&permanent, &for_reinit, enable_anisotropy, mip_count)?; - let mut render_state = RenderState::new(&permanent, &for_reinit, - &window_dressing, &texture)?; + let mut render = Render::new(&permanent, &for_reinit, &window_dressing, + &texture)?; let (vertices, indices) = load_obj()?; - render_state.set_model(Model::new(vertices, indices, &permanent)?); + render.set_model(Model::new(vertices, indices, &permanent)?); *self.window_dressing.get_mut() = Some(window_dressing); - *self.render_state.get_mut() = Some(render_state); + *self.render.get_mut() = Some(render); } *self.texture.get_mut() = Some(texture); @@ -98,11 +93,11 @@ impl Surreality { && let Some(for_reinit) = self.for_reinit.borrow().as_ref() && let Some(window_dressing) = self.window_dressing.borrow_mut().as_mut() - && let Some(render_state) = self.render_state.borrow_mut().as_mut() + && let Some(render) = self.render.borrow_mut().as_mut() && let Some(texture) = self.texture.borrow_mut().as_mut() { window_dressing.reinit(permanent, for_reinit)?; - render_state.reinit(permanent, for_reinit, &window_dressing, &texture)?; + render.reinit(permanent, for_reinit, &window_dressing, &texture)?; } Ok(()) @@ -128,7 +123,7 @@ impl Surreality { if let Some(permanent) = self.permanent.borrow().as_ref() && let Some(window_dressing) = self.window_dressing.borrow_mut().as_mut() - && let Some(render_state) = self.render_state.borrow_mut().as_mut() + && let Some(render) = self.render.borrow_mut().as_mut() && window_id == permanent.window.id() { let device = &permanent.device; @@ -162,7 +157,7 @@ impl Surreality { let time = self.simulation_start.elapsed().as_secs_f32(); let command_buffer = generate_scene_commands( - image_index, time, &render_state, device, + image_index, time, &render, device, &window_dressing.swapchain.extent)?; render_uniforms(device, @@ -226,8 +221,8 @@ impl Drop for Surreality { unsafe { permanent.device.device_wait_idle() }.unwrap(); if let Some(window_dressing) = self.window_dressing.replace(None) { - if let Some(render_state) = self.render_state.replace(None) { - render_state.destroy(&permanent); + if let Some(render) = self.render.replace(None) { + render.destroy(&permanent); } window_dressing.destroy(&permanent.device); |