diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2017-03-01 15:52:49 -0700 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2017-03-13 16:02:59 -0600 |
| commit | e13e02f8060a5352b729f3265fe890fe9985b21a (patch) | |
| tree | d149f88d07636c5f33ecd667479d5ab1c1a943a6 /layers/parameter_validation.cpp | |
| parent | 7cdb3f5946cc2108e3026adb83e5b4c1af30717d (diff) | |
| download | usermoji-e13e02f8060a5352b729f3265fe890fe9985b21a.tar.xz | |
layers: Validate samplerAnisotropy device feature
Change-Id: I8b1262c34612870b9c8ebb1f62e7d6755219606f
Diffstat (limited to 'layers/parameter_validation.cpp')
| -rw-r--r-- | layers/parameter_validation.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp index f0b37040..91067e08 100644 --- a/layers/parameter_validation.cpp +++ b/layers/parameter_validation.cpp @@ -3529,8 +3529,16 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateSampler(VkDevice device, const VkSamplerCre skip |= parameter_validation_vkCreateSampler(report_data, pCreateInfo, pAllocator, pSampler); - // Validation for parameters excluded from the generated validation code due to a 'noautovalidity' tag in vk.xml if (pCreateInfo != nullptr) { + + if ((device_data->physical_device_features.samplerAnisotropy == false) && (pCreateInfo->maxAnisotropy != 1.0)) { + skip |= log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, + DEVICE_FEATURE, LayerName, + "vkCreateSampler(): The samplerAnisotropy feature is not enabled, so the maxAnisotropy member of the " + "VkSamplerCreateInfo structure must be 1.0 but is %f.", + pCreateInfo->maxAnisotropy); + } + // If compareEnable is VK_TRUE, compareOp must be a valid VkCompareOp value if (pCreateInfo->compareEnable == VK_TRUE) { skip |= validate_ranged_enum(report_data, "vkCreateSampler", "pCreateInfo->compareOp", "VkCompareOp", |
