const vk = @import("vulkan"); const glfw = @import("glfw"); pub const BaseDispatch = vk.BaseWrapper(.{ .createInstance = true, .enumerateInstanceLayerProperties = true, .enumerateInstanceExtensionProperties = true, }); pub const vk_proc = @ptrCast(fn (instance: vk.Instance, procname: [*:0]const u8) callconv(.C) vk.PfnVoidFunction, glfw.getInstanceProcAddress); pub var dispatch: BaseDispatch = undefined; pub fn init() !void { dispatch = try BaseDispatch.load(vk_proc); }