aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_vulkan/wrapper.cpp
diff options
context:
space:
mode:
authorAmeer <aj662@drexel.edu>2020-07-04 00:59:40 -0400
committerAmeer <aj662@drexel.edu>2020-07-04 00:59:40 -0400
commit5c4f797cab941665838a9bfa3c84c60d4b7df241 (patch)
tree0ae185ce3ef43ef9b085aae7b9ad5abb04e3d239 /src/video_core/renderer_vulkan/wrapper.cpp
parente081fb07183f33707f974f5ad244c2f64365b58d (diff)
parent08a0a98e5db7850ded6cfb8fdbc93cdf7b9539ae (diff)
Fix merge conflicts?
Diffstat (limited to 'src/video_core/renderer_vulkan/wrapper.cpp')
-rw-r--r--src/video_core/renderer_vulkan/wrapper.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/video_core/renderer_vulkan/wrapper.cpp b/src/video_core/renderer_vulkan/wrapper.cpp
index 2ce9b06264..0d485a6627 100644
--- a/src/video_core/renderer_vulkan/wrapper.cpp
+++ b/src/video_core/renderer_vulkan/wrapper.cpp
@@ -153,7 +153,8 @@ void Load(VkDevice device, DeviceDispatch& dld) noexcept {
bool Load(InstanceDispatch& dld) noexcept {
#define X(name) Proc(dld.name, dld, #name)
- return X(vkCreateInstance) && X(vkEnumerateInstanceExtensionProperties);
+ return X(vkCreateInstance) && X(vkEnumerateInstanceExtensionProperties) &&
+ X(vkEnumerateInstanceLayerProperties);
#undef X
}
@@ -725,8 +726,7 @@ bool PhysicalDevice::GetSurfaceSupportKHR(u32 queue_family_index, VkSurfaceKHR s
return supported == VK_TRUE;
}
-VkSurfaceCapabilitiesKHR PhysicalDevice::GetSurfaceCapabilitiesKHR(VkSurfaceKHR surface) const
- noexcept {
+VkSurfaceCapabilitiesKHR PhysicalDevice::GetSurfaceCapabilitiesKHR(VkSurfaceKHR surface) const {
VkSurfaceCapabilitiesKHR capabilities;
Check(dld->vkGetPhysicalDeviceSurfaceCapabilitiesKHR(physical_device, surface, &capabilities));
return capabilities;
@@ -771,4 +771,17 @@ std::optional<std::vector<VkExtensionProperties>> EnumerateInstanceExtensionProp
return properties;
}
+std::optional<std::vector<VkLayerProperties>> EnumerateInstanceLayerProperties(
+ const InstanceDispatch& dld) {
+ u32 num;
+ if (dld.vkEnumerateInstanceLayerProperties(&num, nullptr) != VK_SUCCESS) {
+ return std::nullopt;
+ }
+ std::vector<VkLayerProperties> properties(num);
+ if (dld.vkEnumerateInstanceLayerProperties(&num, properties.data()) != VK_SUCCESS) {
+ return std::nullopt;
+ }
+ return properties;
+}
+
} // namespace Vulkan::vk