engine: cleanups

- remove unused image submodules
 - fix validation error with subpass commands
 - render with vsync
ecs
q3k 2020-05-09 01:02:26 +02:00
parent 1636b9efcc
commit b9aeafd921
4 changed files with 9 additions and 43 deletions

View File

@ -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",

View File

@ -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<WT: 'static + Send + Sync>(
surface_binding: &super::surface_binding::SurfaceBinding<WT>,
name: String,
) -> Arc<vm::ImmutableImage<vf::Format>> {
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
}

View File

@ -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<WT: 'static + Send + Sync> Instance<WT> {
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();

View File

@ -161,14 +161,14 @@ impl<WT: 'static + Send + Sync> SwapchainBinding<WT> {
}
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] {