vkd3d: Consider mip level for 3D UAV slice check.

Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
This commit is contained in:
Philip Rebohle 2020-11-19 02:48:20 +01:00 committed by Hans-Kristian Arntzen
parent ffc1fa646c
commit ecc504922e
1 changed files with 2 additions and 1 deletions

View File

@ -4563,7 +4563,8 @@ static void vkd3d_create_texture_uav(struct d3d12_desc *descriptor,
key.u.texture.view_type = VK_IMAGE_VIEW_TYPE_3D;
key.u.texture.miplevel_idx = desc->Texture3D.MipSlice;
if (desc->Texture3D.FirstWSlice ||
((desc->Texture3D.WSize != resource->desc.DepthOrArraySize) && (desc->Texture3D.WSize != UINT_MAX)))
((desc->Texture3D.WSize != max(1u, resource->desc.DepthOrArraySize >> desc->Texture3D.MipSlice)) &&
(desc->Texture3D.WSize != UINT_MAX)))
{
FIXME("Unhandled depth view %u-%u.\n",
desc->Texture3D.FirstWSlice, desc->Texture3D.WSize);