diff --git a/Changelog.md b/Changelog.md index 6eca17243..c0944cc50 100644 --- a/Changelog.md +++ b/Changelog.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] - ReleaseDate +### Added + +- Added `VK_EXT_display_surface_counter` instance extension (#933) + ## [0.38.0] - 2024-04-01 With over two years of collecting breaking changes (since the `0.37.0` release in March 2022), April 2024 marks the next breaking release of `ash`. This release introduces an overhaul of all Vulkan structures, restructures modules around extensions, and separates extension wrappers between `Instance` and `Device` functions. The crate contains all bindings defined by the latest `1.3.281` Vulkan specification, and many old and new extensions have received a hand-written extension wrapper. For a full overview of all individual changes, see the list at the end of this post. diff --git a/ash/src/extensions/ext/display_surface_counter.rs b/ash/src/extensions/ext/display_surface_counter.rs new file mode 100644 index 000000000..80ef65156 --- /dev/null +++ b/ash/src/extensions/ext/display_surface_counter.rs @@ -0,0 +1,23 @@ +//! + +use crate::prelude::*; +use crate::vk; + +impl crate::ext::display_surface_counter::Instance { + /// + #[inline] + #[doc(alias = "vkGetPhysicalDeviceSurfaceCapabilities2EXT")] + pub unsafe fn get( + &self, + physical_device: vk::PhysicalDevice, + surface: vk::SurfaceKHR, + surface_capabilities: &mut vk::SurfaceCapabilities2EXT<'_>, + ) -> VkResult<()> { + (self.fp.get_physical_device_surface_capabilities2_ext)( + physical_device, + surface, + surface_capabilities, + ) + .result() + } +} diff --git a/ash/src/extensions/ext/mod.rs b/ash/src/extensions/ext/mod.rs index ac1171c7c..933036245 100644 --- a/ash/src/extensions/ext/mod.rs +++ b/ash/src/extensions/ext/mod.rs @@ -7,6 +7,7 @@ pub mod debug_marker; pub mod debug_report; pub mod debug_utils; pub mod descriptor_buffer; +pub mod display_surface_counter; pub mod extended_dynamic_state; pub mod extended_dynamic_state2; pub mod extended_dynamic_state3;