From 1d176506710c4fabda4e0c4844b1f4ff77e106b7 Mon Sep 17 00:00:00 2001 From: Tobin Ehlis Date: Fri, 25 Sep 2020 16:03:40 -0600 Subject: icd:Consider DS when setting format bits When setting device format properties, don't set color attachment- related bits for DS formats and don't set DS attachment bit for color formats. Fixes #445 --- icd/generated/mock_icd.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'icd/generated') diff --git a/icd/generated/mock_icd.cpp b/icd/generated/mock_icd.cpp index 92c01cfd..9db74bb2 100644 --- a/icd/generated/mock_icd.cpp +++ b/icd/generated/mock_icd.cpp @@ -242,8 +242,22 @@ static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFormatProperties( if (VK_FORMAT_UNDEFINED == format) { *pFormatProperties = { 0x0, 0x0, 0x0 }; } else { - // TODO: Just returning full support for everything initially - *pFormatProperties = { 0x00FFFFFF, 0x00FFFFFF, 0x00FFFFFF }; + // Default to a color format, skip DS bit + *pFormatProperties = { 0x00FFFDFF, 0x00FFFDFF, 0x00FFFDFF }; + switch (format) { + case VK_FORMAT_D16_UNORM: + case VK_FORMAT_X8_D24_UNORM_PACK32: + case VK_FORMAT_D32_SFLOAT: + case VK_FORMAT_S8_UINT: + case VK_FORMAT_D16_UNORM_S8_UINT: + case VK_FORMAT_D24_UNORM_S8_UINT: + case VK_FORMAT_D32_SFLOAT_S8_UINT: + // Don't set color bits for DS formats + *pFormatProperties = { 0x00FFFE7F, 0x00FFFE7F, 0x00FFFE7F }; + break; + default: + break; + } } } -- cgit v1.2.3