From 5d3d3c8ff87cb1653af1844db31992033b35d80f Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Fri, 16 Sep 2016 17:11:50 +1200 Subject: layers: Get rid of old CBSTATUS-based dynamic viewport and scissor These were superceded by the precise tracking of dynamic scissors and viewports. Fix up the tests to look for the precise errors, and get rid of the broken clearing of static scissors & viewports, which triggered other errors. Signed-off-by: Chris Forbes --- layers/core_validation.cpp | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'layers/core_validation.cpp') diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 09f4bcb8..471237c1 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -2240,11 +2240,7 @@ static bool isDynamic(const PIPELINE_NODE *pPipeline, const VkDynamicState state // Validate state stored as flags at time of draw call static bool validate_draw_state_flags(layer_data *dev_data, GLOBAL_CB_NODE *pCB, const PIPELINE_NODE *pPipe, bool indexedDraw) { - bool result; - result = validate_status(dev_data, pCB, CBSTATUS_VIEWPORT_SET, VK_DEBUG_REPORT_ERROR_BIT_EXT, DRAWSTATE_VIEWPORT_NOT_BOUND, - "Dynamic viewport state not set for this command buffer"); - result |= validate_status(dev_data, pCB, CBSTATUS_SCISSOR_SET, VK_DEBUG_REPORT_ERROR_BIT_EXT, DRAWSTATE_SCISSOR_NOT_BOUND, - "Dynamic scissor state not set for this command buffer"); + bool result = false; if (pPipe->graphicsPipelineCI.pInputAssemblyState && ((pPipe->graphicsPipelineCI.pInputAssemblyState->topology == VK_PRIMITIVE_TOPOLOGY_LINE_LIST) || (pPipe->graphicsPipelineCI.pInputAssemblyState->topology == VK_PRIMITIVE_TOPOLOGY_LINE_STRIP))) { @@ -4073,12 +4069,6 @@ static void set_cb_pso_status(GLOBAL_CB_NODE *pCB, const PIPELINE_NODE *pPipe) { CBStatusFlags psoDynStateMask = CBSTATUS_ALL; for (uint32_t i = 0; i < pPipe->graphicsPipelineCI.pDynamicState->dynamicStateCount; i++) { switch (pPipe->graphicsPipelineCI.pDynamicState->pDynamicStates[i]) { - case VK_DYNAMIC_STATE_VIEWPORT: - psoDynStateMask &= ~CBSTATUS_VIEWPORT_SET; - break; - case VK_DYNAMIC_STATE_SCISSOR: - psoDynStateMask &= ~CBSTATUS_SCISSOR_SET; - break; case VK_DYNAMIC_STATE_LINE_WIDTH: psoDynStateMask &= ~CBSTATUS_LINE_WIDTH_SET; break; @@ -7020,7 +7010,6 @@ CmdSetViewport(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t v GLOBAL_CB_NODE *pCB = getCBNode(dev_data, commandBuffer); if (pCB) { skip_call |= addCmd(dev_data, pCB, CMD_SETVIEWPORTSTATE, "vkCmdSetViewport()"); - pCB->status |= CBSTATUS_VIEWPORT_SET; pCB->viewportMask |= ((1u<status |= CBSTATUS_SCISSOR_SET; pCB->scissorMask |= ((1u<