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