aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2017-03-01 14:16:17 -0700
committerMark Lobodzinski <mark@lunarg.com>2017-03-13 16:02:59 -0600
commita4cb5d8d993b9e81f0cb2cca7e2e570fa787b21c (patch)
treef6029f0f45ac8a4506e83382ee04a306e886475b /layers/core_validation.cpp
parent30d58922251a62b7d06b7d1382b8ac5afb03fc25 (diff)
downloadusermoji-a4cb5d8d993b9e81f0cb2cca7e2e570fa787b21c.tar.xz
layers: Validate depthClamp device feature
Change-Id: I61a1c8511b2b142ddf178fbf74654aaad80964bf
Diffstat (limited to 'layers/core_validation.cpp')
-rw-r--r--layers/core_validation.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index 5a2d4d89..49b0b4bc 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -3240,6 +3240,15 @@ static bool verifyPipelineCreateState(layer_data *dev_data, std::vector<PIPELINE
pPipeline->graphicsPipelineCI.pRasterizationState->lineWidth);
}
+ if ((pPipeline->graphicsPipelineCI.pRasterizationState->depthClampEnable == VK_TRUE) &&
+ (!dev_data->enabled_features.depthClamp)) {
+ skip_call |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
+ __LINE__, VALIDATION_ERROR_01455, "DS",
+ "vkCreateGraphicsPipelines(): the depthClamp device feature is disabled: the depthClampEnable "
+ "member of the VkPipelineRasterizationStateCreateInfo structure must be set to VK_FALSE. %s",
+ validation_error_map[VALIDATION_ERROR_01455]);
+ }
+
// If rasterization is enabled...
if (pPipeline->graphicsPipelineCI.pRasterizationState->rasterizerDiscardEnable == VK_FALSE) {
auto subpass_desc = renderPass ? &renderPass->createInfo.pSubpasses[pPipeline->graphicsPipelineCI.subpass] : nullptr;