fix validation bugs. only remaining is screen tearing during resize
This commit is contained in:
@@ -76,6 +76,7 @@ pub fn create_swapchain(
|
||||
) !vk.Extent2D {
|
||||
const extent = try gfx.find_swap_extent(pdev, vki, surface, window);
|
||||
|
||||
const prev_swapchain = swapchain.*;
|
||||
swapchain.* = try vkd.createSwapchainKHR(dev, &.{
|
||||
.surface = surface,
|
||||
.min_image_count = swap_image_count,
|
||||
@@ -89,8 +90,9 @@ pub fn create_swapchain(
|
||||
.composite_alpha = .{ .opaque_bit_khr = true },
|
||||
.present_mode = present_mode,
|
||||
.clipped = vk.TRUE,
|
||||
.old_swapchain = swapchain.*,
|
||||
.old_swapchain = prev_swapchain,
|
||||
}, null);
|
||||
vkd.destroySwapchainKHR(dev, prev_swapchain, null);
|
||||
|
||||
var image_count: u32 = undefined;
|
||||
_ = try vkd.getSwapchainImagesKHR(dev, swapchain.*, &image_count, null);
|
||||
@@ -351,6 +353,8 @@ pub fn main() !void {
|
||||
try record_cmdbuf(cmdbuf, vkd, image, view, extent, pipeline, vertex_buffer, index_buffer);
|
||||
}
|
||||
|
||||
index = 0;
|
||||
|
||||
continue;
|
||||
},
|
||||
else => |errx| return errx,
|
||||
|
Reference in New Issue
Block a user