device.rs |
|
94488 |
entry.rs |
|
13712 |
extensions |
|
|
extensions_generated.rs |
|
921347 |
instance.rs |
|
20378 |
lib.rs |
# Vulkan API
<https://registry.khronos.org/vulkan/specs/1.3-extensions/html/index.html>
## Examples
```no_run
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()`].
## Crate features
* **debug** (default): Whether Vulkan structs should implement `Debug`.
* **loaded** (default): Support searching for the Vulkan loader manually at runtime.
* **linked**: Link the Vulkan loader at compile time.
* **std** (default): Whether ash depends on the standard library (otherwise `alloc` is required) |
7103 |
prelude.rs |
|
4480 |
tables.rs |
|
186328 |
util.rs |
|
4601 |
vk |
|
|
vk.rs |
|
1688 |