From bc1aecbcf8af933ba0b887a5205b382c392aa226 Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Wed, 6 Apr 2022 00:00:46 -0700 Subject: [PATCH] Avoid WIC bitmap scalar for box/fant/point resizing for > 8 bpc HDR/XR formats --- DirectXTex/DirectXTexMipmaps.cpp | 8 ++++++++ DirectXTex/DirectXTexResize.cpp | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/DirectXTex/DirectXTexMipmaps.cpp b/DirectXTex/DirectXTexMipmaps.cpp index 1a401ce..c1d9ce8 100644 --- a/DirectXTex/DirectXTexMipmaps.cpp +++ b/DirectXTex/DirectXTexMipmaps.cpp @@ -686,6 +686,14 @@ namespace case TEX_FILTER_TRIANGLE: // WIC does not implement this filter return false; + + default: + if (BitsPerColor(format) > 8) + { + // Avoid the WIC bitmap scaler when doing filtering of XR/HDR formats + return false; + } + break; } return true; diff --git a/DirectXTex/DirectXTexResize.cpp b/DirectXTex/DirectXTexResize.cpp index a44eedb..0723a08 100644 --- a/DirectXTex/DirectXTexResize.cpp +++ b/DirectXTex/DirectXTexResize.cpp @@ -233,6 +233,14 @@ namespace case TEX_FILTER_TRIANGLE: // WIC does not implement this filter return false; + + default: + if (BitsPerColor(format) > 8) + { + // Avoid the WIC bitmap scaler when doing filtering of XR/HDR formats + return false; + } + break; } return true;