Skip to content

Releases: NVIDIAGameWorks/RayTracingDenoiser

v4.8.1

16 May 02:36
Compare
Choose a tag to compare

v4.8.1:

HIGHLIGHTS:

  • Bug fixes and improvements

DETAILS:

  • REBLUR_SH: fixed mis-normalized weighted sum for diffSh and specSh in HistoryFix pass (the regression appeared after finding a better initial weight for the center pixel)
  • REBLUR_SH: minor performance optimization in "Temporal Stabilization" pass
  • REBLUR_SH: fixed "touching" of specSh.w in HistoryFix pass, which is "modified roughness" and must not be processed in any way

v4.8.0

09 May 10:08
Compare
Choose a tag to compare

HIGHLIGHTS:

  • NRD: improved FP16 viewZ support
  • SIGMA: made more friendly to per light shadow denoising (multi-light scenario)
  • removed unused (non-denoisers) SPECULAR_REFLECTION_MV & SPECULAR_DELTA_MV

DETAILS:

  • NRD: exposed CommonSettings::viewZScale, which should help to improve FP16 support
  • SIGMA: IN_SHADOWDATA => IN_PENUMBRA, IN_SHADOW_TRANSLUCENCY => IN_TRANSLUCENCY
  • SIGMA: massaged front-end functions
  • SIGMA: switched to use common IN_VIEWZ input instead of a custom one (it eliminates a need to clone ViewZ in case of multiple lights)
  • REBLUR: minor tweaks
  • SPECULAR_REFLECTION_MV: deprecated and removed
  • SPECULAR_DELTA_MV: deprecated and removed
  • updated docs

v4.7.0

15 Apr 09:02
Compare
Choose a tag to compare

v4.7.0:

HIGHLIGHTS:

  • REBLUR: minor performance optimization
  • SIGMA: numerous improvements and bug fixes
  • SIGMA: temporal stabilization pass can be disabled, what makes SIGMA more useful for per-light shadow denoising if lights are many

DETAILS:

  • REBLUR: number of steps in "prev-prev" test reduced to 1 (was 2)
  • SIGMA: taken kernel from REBLUR
  • SIGMA: per pixel rotations replaced with per frame rotations
  • SIGMA: tuned random rotators (affects REBLUR too)
  • SIGMA: improved "umbra in wide penumbra" behavior
  • SIGMA: clarified usage of SIGMA_BackEnd_UnpackShadow
  • SIGMA: reduced bias
  • SIGMA: removed SigmaSettings::blurRadiusScale
  • SIGMA: exposed SigmaSettings::lightDirection
  • SIGMA: fixed mismatched behavior between opaque and translucent shadows
  • SIGMA: anisotropic filtering support (currently only for directional light sources)
  • SIGMA: reduced flickering in areas with a small blur radius (if TS is on)
  • SIGMA: exposed SigmaSettings::stabilizationStrength (TS pass is disabled if 0)
  • SIGMA: reduced umbra blurring when in wide penumbra
  • NRD INTEGRATION: bug fixes for debug logging
  • Updated deps
  • Updated docs

v4.6.1

25 Mar 08:06
Compare
Choose a tag to compare

v4.6.1:

HIGHLIGHTS:

  • NRD: shaders made compatible with Vulkan 1.2
  • NRD: improved curvature
  • REBLUR: various improvements

DETAILS:

  • NRD: shaders made compatible with Vulkan 1.2
  • NRD: improved curvature
  • REBLUR: updated code to reflect fixes in MathLib
  • REBLUR: reduced potential darkening on the screen boundaries

v4.6.0

20 Mar 06:41
Compare
Choose a tag to compare

v4.6.0

HIGHLIGHTS:

  • REBLUR: exposed previously hard-coded parameter minBlurRadius
  • NRD: no algorithmic changes

DETAILS:

  • REBLUR: exposed minBlurRadius, which is used in the converged state
  • REBLUR: blurRadius renamed to maxBlurRadius
  • REBLUR: code cleanup
  • SIGMA: code cleanup
  • NRD INTEGRATION: updated to the latest NRI
  • slightly updated docs

v4.5.0

20 Feb 07:28
670d13b
Compare
Choose a tag to compare

v4.5.0:

HIGHLIGHTS:

  • NRD: ResourceDesc::stateNeeded renamed to descriptorType to match ResourceRangeDesc::descriptorType because the former is a concatenation of the latter
  • NRD: extended API for comfortable shader printf support (VK only)
  • REBLUR: minor bug fixes

DETAILS:

  • NRD: added shader printf support (VK only)
  • NRD: stateNeeded renamed to descriptorType to match ResourceRangeDesc::descriptorType
  • REBLUR: added missing "materialID" test for "vmb" specular motion
  • REBLUR: improved fast history accumulation, which improves color clamping behavior
  • NRD INTEGRATION: updated NRI
  • Updated comments
  • Updated README
  • Updated UPDATE
  • Updated deps

v4.4.3

02 Jan 07:39
Compare
Choose a tag to compare

v4.4.3:

HIGHLIGHTS:

  • no changes

DETAILS:

  • updated dependencies

v4.4.2

27 Dec 10:34
Compare
Choose a tag to compare

HIGHLIGHTS:

  • NRD: fixed "NRD_IsValidRadiance" in NRD.hlsli

DETAILS:

  • NRD: fixed "NRD_IsValidRadiance" in NRD.hlsli

v4.4.1

27 Dec 05:48
Compare
Choose a tag to compare

v4.4.1:

HIGHLIGHTS:

  • RELAX: fixed new and old regressions in C++ side code

DETAILS:

  • RELAX: fixed new and old regressions in C++ side code

v4.4.0

27 Dec 04:01
Compare
Choose a tag to compare

v4.4.0:

HIGHLIGHTS:

  • NRD: improved API & robustness
  • NRD: flexible DRS support (improved compatibility with engines using resource suballocation for DRS)
  • NRD: IQ improvements
  • NRD: added GLSL support for NRD.hlsli
  • NRD: added "NRD_FrontEnd_SpecHitDistAveraging_X" functions, needed to properly average specular hit distance for correct specular tracking in case of many RPP

DETAILS:

  • NRD: denoisers made less sensitive to NAN/INF values outside of denoising range and DRS rectangle
  • NRD: added "NRD_FrontEnd_SpecHitDistAveraging_X" functions, needed to properly average specular hit distance for correct specular tracking in case of many RPP
  • NRD: fixed regression: "motionVectorScale[] = 0 and isMotionVectorInWorldSpace = true" case was broken
  • NRD: more flexible CTA definition
  • NRD: improved performance by adjusting CTA sizes
  • NRD: simplified constant data storage related code, ring buffer is not needed (2 Mb => 128 Kb)
  • NRD: added GLSL support for NRD.hlsli
  • NRD: refactored resource macros
  • NRD: added "identifier" to "DispatchDesc" to distinguish which denoiser "ResourceType" is coming from
  • NRD: greatly simplified C++ code by utilizing shared headers
  • NRD: flexible DRS support
  • NRD: minor DRS related fixes
  • NRD: removed unused samplers
  • NRD: clarified "gRectOffset" usage
  • NRD: "gRectOffset" usage moved under NRD_USE_VIEWPORT_OFFSET macro (disabled by default)
  • SIGMA: reduced bias, improved stability
  • RELAX: greatly simplified C++ side code (181 Kb => 99 Kb)
  • RELAX: fixed bugs preventing usage of non-square CTA sizes
  • RELAX: minor fixes in HistoryFix pass
  • RELAX: removed standalone "diffuse" and "specular" settings (was a shortened copy of "RelaxSettings")
  • RELAX: reduced code entropy
  • RELAX: fixed DRS related bug in AtrousSmem
  • REBLUR / RELAX: out of bounds fixes
  • REBLUR / RELAX: removed "historyFixStrideBetweenSamples"
  • REBLUR / SIGMA: added snapping to pixel center in spatial passes
  • REBLUR: replaced "table-flip" unicode emoji ¯\(ツ)
  • REBLUR: improved behavior on thin objects
  • REBLUR: improved HistoryFix
  • REBLUR: material IDs properly applied to all CatRom footprint (fixed outlining on material boundaries)
  • REBLUR: fixed potential color bleeding caused by virtual motion disocclusion
  • REBLUR: optional MV modification made stochastic based
  • REBLUR: fixed suboptimal "vmb" reprojection behavior in disocclusions
  • REFERENCE: renamed REFERENCE inputs
  • NRD INTEGRATION: updated to reflect NRD API changes
  • NRD INTEGRATION: NRI updated to v1.110
  • Cmake: fixed unconditional use of CMAKE_MSVC_RUNTIME_LIBRARY
  • updated docs and comments
  • updated dependencies
  • refactoring