A versatile GPU-accelerated CGI Denoiser Plugin for Nuke
As someone who hates wasting time and loves a perfectly optimized workflow, I constantly look for ways to make my CGI renders faster. While reducing sample counts is the easiest way to achieve this, it comes at the cost of a noisier image.
This shouldn't be an issue nowadays given the availability of powerful open-source denoising tools. While most DCCs and major render engines allow artists to denoise their renders, this approach poses a few issues. First, your original noisy render is often lost (with the exception of Blender Cycles, which allows you to keep a 'noisy' AOV). Second, because denoising is only applied to the combined beauty pass, fine details can be lost.
This is why a better workflow is building a more sophisticated denoising pipeline during compositing. This starts by splitting the AOVs and individually denoising them, helping get fine details back. It also allows adaptively denoising each pass, as some might be noisier than others.
While Blender’s Compositor includes a built-in Denoiser node, Nuke does not natively offer one designed for CGI renders. And unlike tools like Neat Video, which reduce noise by searching for visual patterns (a method best suited for live-action footage), a CGI denoiser estimates noise using Normal and Albedo passes.
It also supports temporal denoising for greater stability across frames.
Install it by pasting irm https://raw.githubusercontent.com/JTCHE/NukeCGDenoiser/main/install.ps1 | iex
into your PowerShell terminal on Windows, or bash -c "$(curl -fsSL https://raw.githubusercontent.com/JTCHE/NukeCGDenoiser/main/install.sh)" on macOS.