WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

mikastiv/vk-kickstart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vk-kickstart

A Zig library to help with Vulkan initialization inspired by vk-bootstrap

The minimum required version is Vulkan 1.1

This library helps with:

  • Instance creation
  • Setting up debug environment (validation layers and debug messenger)
  • Physical device selection based on a set of criteria
  • Enabling physical device extensions
  • Device creation
  • Swapchain creation
  • Getting queues

Setting up

Add vk-kickstart:

zig fetch --save https://github.com/Mikastiv/vk-kickstart/archive/<COMMIT_HASH>.tar.gz

Then update your build file with the following:

// Provide the Vulkan registry
const registry = b.dependency("vulkan_headers", .{}).path("registry/vk.xml");
const vk_kickstart = b.dependency("vk_kickstart", .{
    .registry = registry,
    // Verbose output
    .verbose = true,
});

// Import vk-kickstart
exe.root_module.addImport("vk-kickstart", vk_kickstart.module("vk-kickstart"));
exe.root_module.addImport("vulkan", vk_kickstart.module("vulkan"));

You can then import vk-kickstart as a module and vulkan-zig

const vkk = @import("vk-kickstart");
const vk = @import("vulkan");

See build.zig for an example

How to use

For a code example, see main.zig

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages