Releases: NVIDIAGameWorks/RayTracingDenoiser
Releases Β· NVIDIAGameWorks/RayTracingDenoiser
v4.10.0
HIGHLIGHTS:
- SIGMA: notable IQ improvements (less flickering in motion, better responsiveness)
- REBLUR / RELAX: improvements and bug fixes
- NRD integration: API changes, dictated by new optional features
BREAKING CHANGES:
- no changes in NRD \O/
- Integration: read UPDATE.md
DETAILS:
- NRD: deleted unnecessary curvature flattening if delta between normals is close to normal ULP
- REBLUR: eliminated repacking for normal-roughness
- REBLUR: improved specular tracking
- REBLUR: improved "vmb" specular tracking on moving objects
- REBLUR: fixed and improved logic for
ReblurSettings::responsiveAccumulationRoughnessThreshold
- RELAX: fixed lots of places without
UnpackViewZ
- RELAX: made
ViewZ
FP16 compatible - SIGMA: improved penumbra size weighting scheme
- SIGMA: TS - fixed rare potential 1 pixel leaks
- SIGMA: TS - proper early out in regions with hard shadows
- SIGMA: TS - less flickering in motion
- Integration: added a few checks to increase robustness
- Integration: the constructor replaced with an initialization struct
- Integration: exposed
demoteFloat32to16
option - Integration: exposed
promoteFloat16to32
option - Integration: removed the need to pass
format
(modern NRI allows to query it) - Integration: refactoring, rotating around replacing
Nrd
prefix withnrd::
namespace - updated docs
v4.9.4
v4.9.3
v4.9.2
v4.9.1
v4.9.0fix
v4.9.0
HIGHLIGHTS:
- NRD: exposed
CommonSettings::strandMaterialID
andCommonSettings::strandThickness
to improve denoising on hair and grass - REBLUR: improved IQ without stabilization pass
- REBLUR: improved behavior in disocclusions and in case of a short history
- REBLUR: improved specular tracking
- REBLUR: exposed new settings
hitDistanceStabilizationStrength
andfireflySuppressorMinRelativeScale
- improvements and bug fixes
BREAKING CHANGES:
- REBLUR: changed usage of
maxBlurRadius
and its default value, old values should be multiplied by2
DETAILS:
- NRD: improved comments in main headers, added missing info
- NRD: added optional
NRD_FrontEnd_TrimHitDistance
toNRD.hlsli
- NRD: added
NRD_GetNormalizedStrandThickness
helper toNRD.hlsli
- NRD: exposed
CommonSettings::strandMaterialID
andCommonSettings::strandThickness
- NRD: exposed
NRD_USE_HISTORY_CONFIDENCE
,NRD_USE_DISOCCLUSION_THRESHOLD_MIX
andNRD_USE_BASECOLOR_METALNESS
macro switches allowing to disable almost dead and rarely used code - SIGMA: fixed very rare 2 pixel wide bleeding (introduced by Temporal Stabilization pass under special conditions)
- RELAX: fixed disocclusion threshold scaling
- RELAX: added missing "rect origin" offsets to
IN_DIFF_CONFIDENCE
,IN_SPEC_CONFIDENCE
andIN_DISOCCLUSION_THRESHOLD_MIX
inputs - REBLUR / RELAX: slope scale should not make disocclusion threshold > 1
- REBLUR / RELAX: hooked up
strandMaterialID
and updated disocclusion threshold logic - REBLUR: exposed
ReblurSettings::hitDistanceStabilizationStrength
allowing to control AO/SO responsiveness in the temporal stabilization pass and to reach parity with OCCLUSION denoisers if set to "0" - REBLUR: exposed
ReblurSettings::fireflySuppressorMinRelativeScale
(was previously a macro) - REBLUR: relaxed temporal stabilization pass on
strandMaterialID
- REBLUR: improved specular tracking by optimizing "smb" based accumulation
- REBLUR: improved firefly suppressor (making REBLUR more usable without stabilization)
- REBLUR: improved validation (highlights hitT outside of [0; 1] range)
- REBLUR: removed error estimation used for blur radius correction (barely affected image since ~v4 release)
- REBLUR: reduced ghosting on variadic roughness (more roughness details)
- REBLUR: implemented linear progression of blur radius (much cleaner disocclusions)
- REBLUR_OCCLUSION: disabled firefly suppression for hit distances (could lead to bias in disocclusions)
- REBLUR_OCCLUSION: anti-firefly is disabled in DIRECTIONAL_OCCLUSION too
- REBLUR_OCCLUSION: minor fast history improvements
- updated MathLib
- updated docs
- polishing
v4.8.2
HIGHLIGHTS:
- SIGMA improvements
DETAILS:
- SIGMA: fixed 1 pixel wide blur on shadows with penumbra size < 1 pixel
- SIGMA: better behavior for multi-layered shadows (a narrow penumbra inside a wide penumbra)
- SIGMA: reduced potential flickering
- SIGMA: fixed suboptimal output of the blur pass affecting TS pass
- SIGMA: improved weights for moments calculations in TS pass
- NRD: resolved some TODOs
- updated deps
- updated docs
v4.8.1
v4.8.1:
HIGHLIGHTS:
- Bug fixes and improvements
DETAILS:
- REBLUR_SH: fixed mis-normalized weighted sum for
diffSh
andspecSh
inHistoryFix
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
inHistoryFix
pass, which is "modified roughness" and must not be processed in any way
v4.8.0
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