From 7823346987fc3e0c9e3b2ac4c27619d2728ca7b3 Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Wed, 30 Sep 2020 13:37:40 -0700 Subject: [PATCH] R16_SNORM, R8_SNORM pixel write code updated to round instead of truncate --- DirectXTex/DirectXTexConvert.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DirectXTex/DirectXTexConvert.cpp b/DirectXTex/DirectXTexConvert.cpp index 16c2fbe..b42e97b 100644 --- a/DirectXTex/DirectXTexConvert.cpp +++ b/DirectXTex/DirectXTexConvert.cpp @@ -1889,7 +1889,7 @@ bool DirectX::_StoreScanline( if (sPtr >= ePtr) break; float v = XMVectorGetX(*sPtr++); v = std::max(std::min(v, 1.f), -1.f); - *(dPtr++) = static_cast(v * 32767.f); + *(dPtr++) = static_cast(lroundf(v * 32767.f)); } return true; } @@ -1949,7 +1949,7 @@ bool DirectX::_StoreScanline( if (sPtr >= ePtr) break; float v = XMVectorGetX(*sPtr++); v = std::max(std::min(v, 1.f), -1.f); - *(dPtr++) = static_cast(v * 127.f); + *(dPtr++) = static_cast(lroundf(v * 127.f)); } return true; }