Skip to content

v4.0.0

Compare
Choose a tag to compare
@dzhdanNV dzhdanNV released this 20 Dec 10:46
· 86 commits to master since this release

v4.0.0:

HIGHLIGHTS:

  • NRD: can now optionally patch IN_MV to respect specular motion (needed for TAA, DLSS or any other temporal upscaling tech)
  • NRD: more clear resource binding model with optional "register space" support
  • REBLUR/RELAX: significant improvements in specular motion tracking

DETAILS:

  • NRD: exposed optional IN_BASECOLOR_METALNESS input
  • NRD: GetScreenUv should not be used with "killBackprojection = true"
  • NRD: "isHistoryConfidenceInputsAvailable" => "isHistoryConfidenceAvailable"
  • NRD: "frustumHeight" replaced with "frustumSize", which represents the shortest side (added misc function to Common)
  • API: more clear resource binding model
  • API: added optional "register space" support (controlled in "NRD.hlsli")
  • API: fixed variable names "treeNum" => "treesNum"
  • REBLUR: better disocclusions for 0 roughness
  • REBLUR: added ability to replace surface IN_MV with specular MV if specularity is high
  • REBLUR: color clamping moved after history reconstruction
  • REBLUR: added fast history to occlusion shaders
  • REBLUR: tweaked encoding-aware weights to be less error prone
  • REBLUR: disabled "on the fly" blur radius adjustment
  • REBLUR: "minHitDist" changed to be just "min" without using intensity depend logic
  • REBLUR: footprint quality affects less virtual history amount
  • REBLUR: fixed "smb" motion bleeding in "vmb" motion for 0-roughness on flat surfaces
  • REBLUR: fixed usage of IN_DISOCCLUSION_THRESHOLD_MIX (was computed properly and not used)
  • REBLUR: added "back-facing" test for virtual motion
  • REBLUR: improved parallax based confidence for specular "vmb" motion
  • REBLUR: simplified "GetTemporalAccumulationParams"
  • REBLUR: fraction from settings is used for roughness weight in HistoryFix pass and TA (fixed blurriness)
  • REBLUR: optimizations
  • RELAX: improved specular disocclusion test
  • RELAX: fixed ortho
  • RELAX: improved prev-prev test
  • RELAX: added backface test for virtual motion based specular
  • RELAX: removed some "magic numbers"
  • RELAX: removed parallax math as much as possible
  • RELAX: removed virtual history clamping
  • RELAX: improved roughness tracking for "vmb" history (jitter friendly, tuned weights)
  • RELAX: improved normal tracking for "vmb" history (jitter friendly, tuned weights)
  • RELAX: improved hitT test for "vmb" history
  • RELAX: improved hitT accumulation
  • RELAX: improved curvature handling for normal and prev-prev normal testing
  • RELAX: default specularLobeAngleFraction set to 0.5 (was 0.33)
  • RELAX: improved specular "smb" reprojection
  • RELAX: improved roughness handling in reprojection
  • RELAX: made Prepass respect diffuse/specular lobe angle fraction
  • RELAX: changed default value of "depthThreshold" for spatial passes
  • RELAX: better naming, code refactoring
  • RELAX: optimizations
  • VALIDATION: added "history length" visualization for RELAX
  • VALIDATION: matched "accum frames" visualization logic between REBLUR and RELAX
  • VALIDATION: visualization improvements
  • NRD INTEGRATION: updated to reflect NRI and NRD changes
  • updated MathLib
  • updated README and UPDATE
  • rewritten CMake
  • improved and simplified scripts