Crate ash

source ·
Expand description

Vulkan API

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

Examples

use ash::{vk, Entry};
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)? };

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().

Modules

Wrappers for Vulkan extensions
Raw Vulkan bindings and types, generated from vk.xml

Macros

Structs

Traits