diff options
author | Jason Ekstrand <[email protected]> | 2015-07-09 13:54:08 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2015-07-09 16:14:37 -0700 |
commit | f6d51f3fd3c2677418de677897c724f1bae12d3a (patch) | |
tree | 5312b3a008018bedd45817248390c4d42b22dd19 /include/vulkan | |
parent | 5b75dffd040210aa6968e4543b15162869d0127d (diff) |
vk: Add GetPhysicalDeviceFeatures
Diffstat (limited to 'include/vulkan')
-rw-r--r-- | include/vulkan/vulkan.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/include/vulkan/vulkan.h b/include/vulkan/vulkan.h index 5497e069c37..4f467bb99ac 100644 --- a/include/vulkan/vulkan.h +++ b/include/vulkan/vulkan.h @@ -1153,6 +1153,50 @@ typedef struct { } VkInstanceCreateInfo; typedef struct { + bool32_t robustBufferAccess; + bool32_t fullDrawIndexUint32; + bool32_t imageCubeArray; + bool32_t independentBlend; + bool32_t geometryShader; + bool32_t tessellationShader; + bool32_t sampleRateShading; + bool32_t dualSourceBlend; + bool32_t logicOp; + bool32_t instancedDrawIndirect; + bool32_t depthClip; + bool32_t depthBiasClamp; + bool32_t fillModeNonSolid; + bool32_t depthBounds; + bool32_t wideLines; + bool32_t largePoints; + bool32_t textureCompressionETC2; + bool32_t textureCompressionASTC_LDR; + bool32_t textureCompressionBC; + bool32_t pipelineStatisticsQuery; + bool32_t vertexSideEffects; + bool32_t tessellationSideEffects; + bool32_t geometrySideEffects; + bool32_t fragmentSideEffects; + bool32_t shaderTessellationPointSize; + bool32_t shaderGeometryPointSize; + bool32_t shaderTextureGatherExtended; + bool32_t shaderStorageImageExtendedFormats; + bool32_t shaderStorageImageMultisample; + bool32_t shaderStorageBufferArrayConstantIndexing; + bool32_t shaderStorageImageArrayConstantIndexing; + bool32_t shaderUniformBufferArrayDynamicIndexing; + bool32_t shaderSampledImageArrayDynamicIndexing; + bool32_t shaderStorageBufferArrayDynamicIndexing; + bool32_t shaderStorageImageArrayDynamicIndexing; + bool32_t shaderClipDistance; + bool32_t shaderCullDistance; + bool32_t shaderFloat64; + bool32_t shaderInt64; + bool32_t shaderFloat16; + bool32_t shaderInt16; +} VkPhysicalDeviceFeatures; + +typedef struct { VkFormatFeatureFlags linearTilingFeatures; VkFormatFeatureFlags optimalTilingFeatures; } VkFormatProperties; @@ -1877,6 +1921,7 @@ typedef struct { typedef VkResult (VKAPI *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, VkInstance* pInstance); typedef VkResult (VKAPI *PFN_vkDestroyInstance)(VkInstance instance); typedef VkResult (VKAPI *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices); +typedef VkResult (VKAPI *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures); typedef VkResult (VKAPI *PFN_vkGetPhysicalDeviceInfo)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceInfoType infoType, size_t* pDataSize, void* pData); typedef VkResult (VKAPI *PFN_vkGetPhysicalDeviceFormatInfo)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatInfo); typedef PFN_vkVoidFunction (VKAPI *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName); @@ -1999,6 +2044,10 @@ VkResult VKAPI vkEnumeratePhysicalDevices( uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices); +VkResult VKAPI vkGetPhysicalDeviceFeatures( + VkPhysicalDevice physicalDevice, + VkPhysicalDeviceFeatures* pFeatures); + VkResult VKAPI vkGetPhysicalDeviceInfo( VkPhysicalDevice physicalDevice, VkPhysicalDeviceInfoType infoType, |