aa7b429f4f
* Mark EntryCustom::new_custom as unsafe Passing a badly-behaved `load` function can invoke undefined behavior. * Document required feature for Entry * Support linking Vulkan directly This is the preferred pattern in most environments when an application cannot function without Vulkan, as it saves the libloading dependency, eliminates an error case, and makes the Vulkan dependency visible to the OS. * Rename libloading feature to "loaded" * Link by default * Guide users towards linking the loader directly * Remove unnecessary error type InstanceError::LoadError was never constructed. * Unify entry types Simplifies the interface and allows a bunch of code to become monomorphic. |
||
---|---|---|
.. | ||
examples | ||
src | ||
Cargo.toml | ||
Changelog.md | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md |
Ash-window
Interoperability between ash
and raw-window-handle
for surface creation.
Usage
ash-window = "0.7"
The library exposes two functions:
-
enumerate_required_extensions
returns the required instance extensions needed for surface creation from a specific window handle. -
create_surface
allows to create a surface from a type implementingHasRawWindowHandle
:ash_window::create_surface(&entry, &instance, &window, None)?;
Versions
ash = "0.33"
raw-window-handle = "0.3"
Support
- Windows (
VK_KHR_win32_surface
) - Unix (
VK_KHR_xlib_surface
/VK_KHR_xcb_surface
/VK_KHR_wayland_surface
) - MacOS/IOS (
VK_EXT_metal_surface
) - Android (
VK_KHR_android_surface
)
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any Contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.