From b9aeafd9215c912d1af79ca15d0e0d7562c82a9c Mon Sep 17 00:00:00 2001 From: Sergiusz Bazanski Date: Sat, 9 May 2020 01:02:26 +0200 Subject: [PATCH] engine: cleanups - remove unused image submodules - fix validation error with subpass commands - render with vsync --- engine/BUILD | 1 - engine/src/render/vulkan/images.rs | 32 ------------------- engine/src/render/vulkan/mod.rs | 3 +- engine/src/render/vulkan/swapchain_binding.rs | 16 +++++----- 4 files changed, 9 insertions(+), 43 deletions(-) delete mode 100644 engine/src/render/vulkan/images.rs diff --git a/engine/BUILD b/engine/BUILD index b55f09a..a1290e4 100644 --- a/engine/BUILD +++ b/engine/BUILD @@ -13,7 +13,6 @@ rust_binary( "src/render/mod.rs", "src/render/renderable.rs", "src/render/vulkan/data.rs", - "src/render/vulkan/images.rs", "src/render/vulkan/mod.rs", "src/render/vulkan/pipeline.rs", "src/render/vulkan/qfi.rs", diff --git a/engine/src/render/vulkan/images.rs b/engine/src/render/vulkan/images.rs deleted file mode 100644 index 7d6553d..0000000 --- a/engine/src/render/vulkan/images.rs +++ /dev/null @@ -1,32 +0,0 @@ -use std::sync::Arc; - -use image; -use image::GenericImageView; - -use vulkano::image as vm; -use vulkano::format as vf; -use vulkano::sync::GpuFuture; - -pub fn load_texture( - surface_binding: &super::surface_binding::SurfaceBinding, - name: String, -) -> Arc> { - let path = &crate::util::file::resource_path(name); - - let image = image::open(path).unwrap(); - let width = image.width(); - let height = image.height(); - - let image_rgba = image.to_rgba(); - let (image_view, future) = vm::ImmutableImage::from_iter( - image_rgba.into_raw().iter().cloned(), - vm::Dimensions::Dim2d{ width, height }, - vf::Format::R8G8B8A8Unorm, - surface_binding.graphics_queue.clone() - ).unwrap(); - - future.flush().unwrap(); - - image_view -} - diff --git a/engine/src/render/vulkan/mod.rs b/engine/src/render/vulkan/mod.rs index 7a60464..5467c6c 100644 --- a/engine/src/render/vulkan/mod.rs +++ b/engine/src/render/vulkan/mod.rs @@ -18,7 +18,6 @@ mod qfi; mod shaders; mod swapchain_binding; mod worker; -pub mod images; use crate::render::renderable; @@ -216,7 +215,7 @@ impl Instance { let mut primary = vc::AutoCommandBufferBuilder::primary_one_time_submit(device.clone(), qf) .unwrap() - .begin_render_pass(framebuffer.clone(), false, vec![[0.0, 0.0, 0.0, 1.0].into(), vulkano::format::ClearValue::Depth(1.0)]) + .begin_render_pass(framebuffer.clone(), true, vec![[0.0, 0.0, 0.0, 1.0].into(), vulkano::format::ClearValue::Depth(1.0)]) .unwrap(); diff --git a/engine/src/render/vulkan/swapchain_binding.rs b/engine/src/render/vulkan/swapchain_binding.rs index 5aaa8a4..8c06eee 100644 --- a/engine/src/render/vulkan/swapchain_binding.rs +++ b/engine/src/render/vulkan/swapchain_binding.rs @@ -161,14 +161,14 @@ impl SwapchainBinding { } fn choose_swap_present_mode(available_present_modes: vs::SupportedPresentModes) -> vs::PresentMode { - if available_present_modes.mailbox { - vs::PresentMode::Mailbox - } else if available_present_modes.immediate { - vs::PresentMode::Immediate - } else { - vs::PresentMode::Fifo - } - //vs::PresentMode::Fifo + //if available_present_modes.mailbox { + // vs::PresentMode::Mailbox + //} else if available_present_modes.immediate { + // vs::PresentMode::Immediate + //} else { + // vs::PresentMode::Fifo + //} + vs::PresentMode::Fifo } fn choose_swap_extent(capabilities: &vs::Capabilities) -> [u32; 2] {