Skip to content

v3.5.0

Compare
Choose a tag to compare
@dzhdanNV dzhdanNV released this 30 Aug 09:41
· 68 commits to master since this release

NRD v3.5.0:

HIGHLIGHTS:

  • REBLUR: important follow up bug & regression fixes
  • REBLUR: fixed broken DIRECTIONAL_OCCLUSION denoiser
  • REBLUR: significantly reduced memory usage of OCCLUSION & DIRECTIONAL_OCCLUSION denoisers
  • REBLUR: improved internal anti-firefly suppressor
  • REBLUR: more stable specular tracking
  • REBLUR: improved IQ
  • REBLUR: temporal stabilization is now less important for IQ (but still needed for antilag)

DETAILS:

  • NRD: SH simplifications
  • NRD: prepass rotator now scales blur radius by +/- 25%
  • NRD: added cutoffs for non-exponential weights to minimize FP precision drifting
  • NRD: added optional "NONE" mode for kernel rotation
  • NRD: fixed strangely-looking code for texture clearing
  • NRD: tweaked hit distance weight to be not stricter than 3%
  • NRD: introduced NRD_EPS
  • NRD: reduced code entropy
  • REBLUR OCCLUSION and DIRECTIONAL_OCCLUSION: switched internal processing to 16-bit UNORM/SNORM instead of 16-bit FLOAT to fix darkening effects when history length is very long
  • REBLUR OCCLUSION: significantly reduced memory usage
  • REBLUR OCCLUSION: simplified code to be closer to non-occlusion mode
  • REBLUR DIRECTIONAL_OCCLUSION: fixed! (was broken after recent changes)
  • REBLUR DIRECTIONAL OCCLUSION & SH: fixed internal anti-firefly suppressor
  • REBLUR SH: advanced prepass made always on since direction and PDF is available
  • REBLUR: rotators now scale blur radius by +/- 25%
  • REBLUR: exposed "historyFixFrameNum" and "historyFixStrideBetweenSamples" instead of "historyFixStrength"
  • REBLUR: min PDF check moved to encoding phase
  • REBLUR: tuned fractions
  • REBLUR: fixed "darkening" bias (old regression)
  • REBLUR: massaged blur radius calculation
  • REBLUR: blur radius boost adjusted by roughness (regression)
  • REBLUR: tuned blur radius in spatial passes if number of accumulated frames is low
  • REBLUR: massaged curvature angle
  • REBLUR: switched to symmetrical kernel
  • REBLUR: improved virtual parallax based confidence calculation (less history drops for glossy specular)
  • REBLUR: simplified checkerboard resolve & accum speeds interpolation
  • REBLUR: relaxed parallax check if history length is short
  • REBLUR: fixed potentially numerically unstable direction normalization (regression)
  • REBLUR: fixed virtual motion based history accumulation acceleration (regression)
  • REBLUR: tweaked plane distance sensitivity after history reset
  • REBLUR: switched anti-firefly to 3x3 instead of 5x5
  • REBLUR: anti-firefly and fast history clamping improvements
  • REBLUR: fixed lost after refactoring scale in "GetSensitivityToDarkness" (regression)
  • REBLUR: returned not affecting main history anti-firefly for hitT in temporal stabilization pass (regression)
  • REBLUR: fixed ancient code preventing anti-lag from resetting history to 0 (was only 1 frame)
  • REBLUR: improved checkerboard resolve for fast history
  • REBLUR: matched surface- and virtual- based motion footprint quality calculations
  • REBLUR: spatial filtering now follows specular lobe better
  • REBLUR: improved behavior in disocclusions
  • REBLUR: improved anti-firefly suppressor
  • REBLUR: disocclusion check simplification
  • REBLUR: used averaged instead of normalized previous normal for backfacing check
  • REBLUR: resolved some TODOs
  • REBLUR: improved code reuse
  • REBLUR: refactoring
  • RELAX: unification related renamings
  • updated README & UPDATE
  • updated MathLib