mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 16:18:06 +02:00
dzn: Use typeless format for creation of depth-only or stencil-only D24S8
When querying capabilities or creating views using a scoped aspect mask, we want to return the format for the correct single-channel format, but when actually creating the resource (aspect mask 0), we want to use the typeless format, since the single-channel formats don't report multisampling support. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20614>
This commit is contained in:
parent
9f928adf81
commit
2f4c7b5ccf
1 changed files with 10 additions and 4 deletions
|
|
@ -286,8 +286,11 @@ dzn_image_get_dxgi_format(VkFormat format,
|
|||
DXGI_FORMAT_D32_FLOAT : DXGI_FORMAT_R32_FLOAT;
|
||||
|
||||
case PIPE_FORMAT_Z24X8_UNORM:
|
||||
return usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT ?
|
||||
DXGI_FORMAT_D24_UNORM_S8_UINT : DXGI_FORMAT_R24_UNORM_X8_TYPELESS;
|
||||
if (usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT)
|
||||
return DXGI_FORMAT_D24_UNORM_S8_UINT;
|
||||
if (aspects & VK_IMAGE_ASPECT_DEPTH_BIT)
|
||||
return DXGI_FORMAT_R24_UNORM_X8_TYPELESS;
|
||||
return DXGI_FORMAT_R24G8_TYPELESS;
|
||||
|
||||
case PIPE_FORMAT_Z24_UNORM_S8_UINT:
|
||||
if (usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT)
|
||||
|
|
@ -301,8 +304,11 @@ dzn_image_get_dxgi_format(VkFormat format,
|
|||
return DXGI_FORMAT_R24G8_TYPELESS;
|
||||
|
||||
case PIPE_FORMAT_X24S8_UINT:
|
||||
return usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT ?
|
||||
DXGI_FORMAT_D24_UNORM_S8_UINT : DXGI_FORMAT_X24_TYPELESS_G8_UINT;
|
||||
if (usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT)
|
||||
return DXGI_FORMAT_D24_UNORM_S8_UINT;
|
||||
if (aspects & VK_IMAGE_ASPECT_STENCIL_BIT)
|
||||
return DXGI_FORMAT_X24_TYPELESS_G8_UINT;
|
||||
return DXGI_FORMAT_R24G8_TYPELESS;
|
||||
|
||||
case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
|
||||
if (usage == VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue