Releases: NVIDIAGameWorks/RayTracingDenoiser
Releases · NVIDIAGameWorks/RayTracingDenoiser
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
v4.7.0
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
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
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 tomaxBlurRadius
- REBLUR: code cleanup
- SIGMA: code cleanup
- NRD INTEGRATION: updated to the latest NRI
- slightly updated docs
v4.5.0
v4.5.0:
HIGHLIGHTS:
- NRD:
ResourceDesc::stateNeeded
renamed todescriptorType
to matchResourceRangeDesc::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 todescriptorType
to matchResourceRangeDesc::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
v4.4.2
v4.4.1
v4.4.0
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