fixed validation errors

This commit is contained in:
Janis 2024-12-15 02:19:56 +01:00
parent d9f302cb5a
commit ee995bbd01

View file

@ -655,6 +655,7 @@ impl Swapchain {
.map(|&image| {
let info = vk::ImageViewCreateInfo::default()
.image(image)
.view_type(vk::ImageViewType::TYPE_2D)
.format(format)
.components(vk::ComponentMapping::default())
.subresource_range(
@ -710,6 +711,7 @@ impl Swapchain {
.map(|&image| {
let info = vk::ImageViewCreateInfo::default()
.image(image)
.view_type(vk::ImageViewType::TYPE_2D)
.format(format)
.components(vk::ComponentMapping::default())
.subresource_range(
@ -756,7 +758,10 @@ impl Swapchain {
.image_color_space(image_color_space)
.image_format(image_format)
.min_image_count(image_count)
.image_usage(vk::ImageUsageFlags::TRANSFER_DST)
.image_usage(
vk::ImageUsageFlags::TRANSFER_DST
| vk::ImageUsageFlags::COLOR_ATTACHMENT,
)
.image_array_layers(1)
.image_extent(image_extent)
.image_sharing_mode(if queue_families.len() <= 1 {
@ -1216,8 +1221,6 @@ impl Vulkan {
(family, index)
};
eprintln!("queue families: {:?}", pdev.queue_families);
let graphics_family_and_index = helper(pdev.queue_families.graphics);
let compute_family_and_index =
pdev.queue_families.async_compute.map(|f| helper(f));
@ -1232,8 +1235,6 @@ impl Vulkan {
as usize
];
eprintln!("unique_families: {unique_families:?}");
let queue_infos = unique_families
.into_iter()
.filter(|&(_, count)| count > 0)
@ -1244,8 +1245,6 @@ impl Vulkan {
})
.collect::<Vec<_>>();
eprintln!("infos: {queue_infos:#?}");
let extensions = features
.device_extensions
.iter()
@ -1556,7 +1555,7 @@ impl Renderer {
continue;
}
let image = ctx.current_swapchain.images.first().cloned().unwrap();
let image = ctx.current_swapchain.images[swapchain_index as usize];
// let image = images::Image2D::new_exclusive(
// self.vulkan.alloc.clone(),
@ -1612,7 +1611,7 @@ impl Renderer {
vk::ImageAspectFlags::COLOR,
vk::PipelineStageFlags2::TRANSFER,
vk::AccessFlags2::TRANSFER_WRITE,
vk::PipelineStageFlags2::BOTTOM_OF_PIPE,
vk::PipelineStageFlags2::TRANSFER,
vk::AccessFlags2::empty(),
vk::ImageLayout::TRANSFER_DST_OPTIMAL,
vk::ImageLayout::PRESENT_SRC_KHR,
@ -1631,7 +1630,7 @@ impl Renderer {
dev.graphics_queue().clone(),
Some((
ready_semaphore.semaphore(),
vk::PipelineStageFlags::TOP_OF_PIPE,
vk::PipelineStageFlags::ALL_COMMANDS,
)),
Some(signal_semaphore.semaphore()),
)?;
@ -1648,6 +1647,9 @@ impl Renderer {
})?;
future.block_until()?;
dev.dev().device_wait_idle();
drop(ready_semaphore);
drop(signal_semaphore);
}
}