diff options
| author | Chia-I Wu <olv@lunarg.com> | 2015-10-31 00:31:16 +0800 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-11-03 15:21:48 -0700 |
| commit | 3ede94625213de8237d565a9cb3ba16608d47af3 (patch) | |
| tree | 1750ecc9811cea2eff8a8d8cef4ce1c532d46c66 /layers/draw_state.cpp | |
| parent | ed57756e9b7768023aab49f540e09911a28046cb (diff) | |
| download | usermoji-3ede94625213de8237d565a9cb3ba16608d47af3.tar.xz | |
bug 14537: vkGetPhysicalDeviceImageFormatProperties doesn't express all limitations (WIP)
Use VkSampleCountFlagBits exclusively. Note that it can be casted to integer.
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14537
Diffstat (limited to 'layers/draw_state.cpp')
| -rwxr-xr-x | layers/draw_state.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp index fda3b52f..c50a23a9 100755 --- a/layers/draw_state.cpp +++ b/layers/draw_state.cpp @@ -575,46 +575,46 @@ static void deletePipelines(layer_data* my_data) my_data->pipelineMap.clear(); } // For given pipeline, return number of MSAA samples, or one if MSAA disabled -static uint32_t getNumSamples(layer_data* my_data, const VkPipeline pipeline) +static VkSampleCountFlagBits getNumSamples(layer_data* my_data, const VkPipeline pipeline) { PIPELINE_NODE* pPipe = my_data->pipelineMap[pipeline]; if (VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO == pPipe->msStateCI.sType) { return pPipe->msStateCI.rasterizationSamples; } - return 1; + return VK_SAMPLE_COUNT_1_BIT; } // Validate state related to the PSO static VkBool32 validatePipelineState(layer_data* my_data, const GLOBAL_CB_NODE* pCB, const VkPipelineBindPoint pipelineBindPoint, const VkPipeline pipeline) { if (VK_PIPELINE_BIND_POINT_GRAPHICS == pipelineBindPoint) { // Verify that any MSAA request in PSO matches sample# in bound FB - uint32_t psoNumSamples = getNumSamples(my_data, pipeline); + VkSampleCountFlagBits psoNumSamples = getNumSamples(my_data, pipeline); if (pCB->activeRenderPass) { const VkRenderPassCreateInfo* pRPCI = my_data->renderPassMap[pCB->activeRenderPass]; const VkSubpassDescription* pSD = &pRPCI->pSubpasses[pCB->activeSubpass]; - int subpassNumSamples = 0; + VkSampleCountFlagBits subpassNumSamples = (VkSampleCountFlagBits) 0; uint32_t i; for (i = 0; i < pSD->colorAttachmentCount; i++) { - uint32_t samples; + VkSampleCountFlagBits samples; if (pSD->pColorAttachments[i].attachment == VK_ATTACHMENT_UNUSED) continue; samples = pRPCI->pAttachments[pSD->pColorAttachments[i].attachment].samples; - if (subpassNumSamples == 0) { + if (subpassNumSamples == (VkSampleCountFlagBits) 0) { subpassNumSamples = samples; } else if (subpassNumSamples != samples) { - subpassNumSamples = -1; + subpassNumSamples = (VkSampleCountFlagBits) -1; break; } } if (pSD->pDepthStencilAttachment && pSD->pDepthStencilAttachment->attachment != VK_ATTACHMENT_UNUSED) { - const uint32_t samples = pRPCI->pAttachments[pSD->pDepthStencilAttachment->attachment].samples; - if (subpassNumSamples == 0) + const VkSampleCountFlagBits samples = pRPCI->pAttachments[pSD->pDepthStencilAttachment->attachment].samples; + if (subpassNumSamples == (VkSampleCountFlagBits) 0) subpassNumSamples = samples; else if (subpassNumSamples != samples) - subpassNumSamples = -1; + subpassNumSamples = (VkSampleCountFlagBits) -1; } if (psoNumSamples != subpassNumSamples) { |
