Ignore rasterization state pointers when rasterization is disabled
The Vulkan specification for VkGraphicsPipelineCreateInfo states:
* pViewportState is a pointer to a VkPipelineViewportStateCreateInfo structure, and is ignored if the pipeline has rasterization disabled.
* pMultisampleState is a pointer to a VkPipelineMultisampleStateCreateInfo structure, and is ignored if the pipeline has rasterization disabled.
* pDepthStencilState is a pointer to a VkPipelineDepthStencilStateCreateInfo structure, and is ignored if the pipeline has rasterization disabled or if the subpass of the render pass the pipeline is created against does not use a depth/stencil attachment.
* pColorBlendState is a pointer to a VkPipelineColorBlendStateCreateInfo structure, and is ignored if the pipeline has rasterization disabled or if the subpass of the render pass the pipeline is created against does not use any color attachments.
Also remove the UNSUPPORTED() for pTessellationState since it is valid
for the application to provide a non-null pointer even though
tessellation is not supported.
Bug: b/155359026
Change-Id: Ic1cd9224b159cca66f0dbf1b1a563efc56386866
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/45728
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Tested-by:
Nicolas Capens <nicolascapens@google.com>
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by:
Alexis Hétu <sugoi@google.com>
Showing
Please
register
or
sign in
to comment