diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2017-03-01 16:15:02 -0700 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2017-03-13 16:02:59 -0600 |
| commit | 9f01d765bf55c3723930c7e8aa91e7777b2af259 (patch) | |
| tree | a13e7e9a4ae6a9f200c4613c725b840e6322fcdd /layers/parameter_validation.cpp | |
| parent | 233a2d7508e2fbbb01c0b2b113873ea0874f0a9d (diff) | |
| download | usermoji-9f01d765bf55c3723930c7e8aa91e7777b2af259.tar.xz | |
layers: Add textureCompressionETC2 feature check
Change-Id: I13408cd02beda7c4f91a6e9424fa0d1109461b6d
Diffstat (limited to 'layers/parameter_validation.cpp')
| -rw-r--r-- | layers/parameter_validation.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp index 91067e08..b540dac2 100644 --- a/layers/parameter_validation.cpp +++ b/layers/parameter_validation.cpp @@ -2541,6 +2541,16 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateImage(VkDevice device, const VkImageCreateI skip |= parameter_validation_vkCreateImage(report_data, pCreateInfo, pAllocator, pImage); if (pCreateInfo != nullptr) { + + if ((device_data->physical_device_features.textureCompressionETC2 == false) && + vk_format_is_compressed_ETC2_EAC(pCreateInfo->format)) { + skip |= log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, + DEVICE_FEATURE, LayerName, + "vkCreateImage(): Attempting to create VkImage with format %s. The textureCompressionETC2 feature is " + "not enabled: neither ETC2 nor EAC formats can be used to create images.", + string_VkFormat(pCreateInfo->format)); + } + // Validation for parameters excluded from the generated validation code due to a 'noautovalidity' tag in vk.xml if (pCreateInfo->sharingMode == VK_SHARING_MODE_CONCURRENT) { // If sharingMode is VK_SHARING_MODE_CONCURRENT, queueFamilyIndexCount must be greater than 1 |
