diff --git a/util/test/demos/vk/vk_discard_zoo.cpp b/util/test/demos/vk/vk_discard_zoo.cpp index 7003ce846..7ef1aa61e 100644 --- a/util/test/demos/vk/vk_discard_zoo.cpp +++ b/util/test/demos/vk/vk_discard_zoo.cpp @@ -236,6 +236,11 @@ void main() d32 = false; } + bool s8 = true; + vkGetPhysicalDeviceFormatProperties(phys, VK_FORMAT_S8_UINT, &props); + if((props.optimalTilingFeatures & VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT) == 0) + s8 = false; + bool KHR_separate_stencil = std::find(devExts.begin(), devExts.end(), VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME) != devExts.end(); @@ -538,6 +543,16 @@ void main() DiscardImage(cmd, tex); } + if(s8) + { + TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 5)); + DiscardImage(cmd, tex); + TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 1, 4)); + DiscardImage(cmd, tex); + TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 5, 4)); + DiscardImage(cmd, tex); + } + TEX_TEST("DiscardAll", MakeTex2D(depthFormat, 300, 300, 5)); DiscardImage(cmd, tex); TEX_TEST("DiscardAll", MakeTex2D(depthFormat, 300, 300, 1, 4)); @@ -550,12 +565,6 @@ void main() DiscardImage(cmd, tex); TEX_TEST("DiscardAll", MakeTex2D(depthStencilFormat, 300, 300, 5, 4)); DiscardImage(cmd, tex); - TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 5)); - DiscardImage(cmd, tex); - TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 1, 4)); - DiscardImage(cmd, tex); - TEX_TEST("DiscardAll", MakeTex2D(VK_FORMAT_S8_UINT, 300, 300, 5, 4)); - DiscardImage(cmd, tex); TEX_TEST("DiscardAll", MakeTex2DMS(depthStencilFormat, 300, 300, 4)); DiscardImage(cmd, tex); TEX_TEST("DiscardAll", MakeTex2DMS(depthStencilFormat, 300, 300, 4, 5));