ash 0.36.0+1.3.206

Vulkan bindings for Rust
Documentation

Vulkan API

https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/index.html

Examples

use ash::{vk, Entry};
# fn main() -> Result<(), Box<dyn std::error::Error>> {
let entry = Entry::linked();
let app_info = vk::ApplicationInfo {
api_version: vk::make_api_version(0, 1, 0, 0),
..Default::default()
};
let create_info = vk::InstanceCreateInfo {
p_application_info: &app_info,
..Default::default()
};
let instance = unsafe { entry.create_instance(&create_info, None)? };
# Ok(()) }

Getting started

Load the Vulkan library linked at compile time using [Entry::linked()], or load it at runtime using [Entry::load()], which uses libloading. If you want to perform entry point loading yourself, call [Entry::from_static_fn()].