Merge pull request #957 from Radagan/fix_portability
Updated to include VK_HEADER_VERSION check.
This commit is contained in:
commit
397c2e6d9b
2 changed files with 12 additions and 5 deletions
|
|
@ -11,6 +11,10 @@
|
|||
#include <VulkanDevice.h>
|
||||
#include <unordered_set>
|
||||
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK) && (VK_HEADER_VERSION >= 216)
|
||||
#include <vulkan/vulkan_beta.h>
|
||||
#endif
|
||||
|
||||
namespace vks
|
||||
{
|
||||
/**
|
||||
|
|
@ -248,8 +252,8 @@ namespace vks
|
|||
deviceExtensions.push_back(VK_KHR_SWAPCHAIN_EXTENSION_NAME);
|
||||
}
|
||||
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK)
|
||||
deviceExtensions.push_back("VK_KHR_portability_subset");
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK) && (VK_HEADER_VERSION >= 216)
|
||||
deviceExtensions.push_back(VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
VkDeviceCreateInfo deviceCreateInfo = {};
|
||||
|
|
|
|||
|
|
@ -51,12 +51,15 @@ VkResult VulkanExampleBase::createInstance(bool enableValidation)
|
|||
instanceExtensions.push_back(VK_MVK_IOS_SURFACE_EXTENSION_NAME);
|
||||
#elif defined(VK_USE_PLATFORM_MACOS_MVK)
|
||||
instanceExtensions.push_back(VK_MVK_MACOS_SURFACE_EXTENSION_NAME);
|
||||
instanceExtensions.push_back(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME);
|
||||
instanceExtensions.push_back(VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME);
|
||||
#elif defined(VK_USE_PLATFORM_HEADLESS_EXT)
|
||||
instanceExtensions.push_back(VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK) && (VK_HEADER_VERSION >= 216)
|
||||
instanceExtensions.push_back(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME);
|
||||
instanceExtensions.push_back(VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
// Get extensions supported by the instance and store for later use
|
||||
uint32_t extCount = 0;
|
||||
vkEnumerateInstanceExtensionProperties(nullptr, &extCount, nullptr);
|
||||
|
|
@ -91,7 +94,7 @@ VkResult VulkanExampleBase::createInstance(bool enableValidation)
|
|||
instanceCreateInfo.pNext = NULL;
|
||||
instanceCreateInfo.pApplicationInfo = &appInfo;
|
||||
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK)
|
||||
#if defined(VK_USE_PLATFORM_MACOS_MVK) && (VK_HEADER_VERSION >= 216)
|
||||
instanceCreateInfo.flags = VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR;
|
||||
#endif
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue