From 002761d7f84d04a2712b95afea7bca9c42dc8243 Mon Sep 17 00:00:00 2001 From: David Allemang Date: Tue, 2 Apr 2024 11:24:29 -0400 Subject: [PATCH] fix validation bugs. only remaining is screen tearing during resize --- src/main.zig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main.zig b/src/main.zig index 8f473f5..d0a5422 100644 --- a/src/main.zig +++ b/src/main.zig @@ -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,