Color Banding
A simple D3D12 sample application that demonstrates how to use white and blue noise to dither, mitigating color banding when rendering in SDR. To learn more, see the blog post at: http://www.visualextract.com/posts/color-banding/
After building and running the code, first thing I recommend you do is load up the Nsight Graphics project file (ColorBanding.nsight-gfxproj), and capture a frame of the application running. This will provide a clear view of exactly what is happening as the application is running. Download Nsight Graphics here.
Requirements
- Windows 10 v1809, "October 2018 Update" (RS5) or later
- Windows 10 SDK v1809 (10.0.17763.0) or later. Download it here, or install with the Visual Studio Installer.
- Visual Studio 2017, 2019, or VS Code
Command Line Arguments
-width [integer]
specifies the width (in pixels) of the rendering window-height [integer]
specifies the height (in pixels) of the rendering window-vsync [0|1]
specifies whether vsync is enabled or disabled
Licenses and Open Source Software
See LICENSE.txt
This project uses:
- stb_image.h, provided with an MIT license.
- Blue noise textures generated by Christoph Peters, and provided with the Creative Commons CC0 Public Domain Dedication. See http://momentsingraphics.de/BlueNoise.html for more information.