Releases: NVIDIA-RTX/NRD
Releases Β· NVIDIA-RTX/NRD
v4.15.1-fixed
Same as v4.15.1, but resolved CMake's inability to shallow-clone a commit hash.
v4.15.1
HIGHLIGHTS:
- improvements and bug fixes
DETAILS:
- Slightly improved performance by compile-time specialization (see new CMake options, no breaking changes)
- Integration: banned
ResourceSnapshot
copying to immediately reveal invalid usage (the structure stores pointers to itself) - GitHub actions: fixed always successful build
- REBLUR: dynamic
enablePerformanceMode
setting replaced with staticREBLUR_PERFORMANCE_MODE
macro and corresponding CMake option (low run-time value and high maintenance cost) - CMake: updated ShaderMake and tagged the specific hash to prevent regressions
- CMake: added Arm64 support, including cross compilation
- NRI updated to v174
- increased scripts robustness
v4.15.0
v4.15.0:
HIGHLIGHTS:
- NRD: bug fixes and improvements
- NRD INTEGRATION: reworked, improved and simplified usage (added support for auto-wrapping of native objects)
DETAILS:
- NRD: samplers moved to a separate set (space) for sharing
- NRD: reworked
DescriptorPoolDesc
(and improved filling) - NRD: reduced binding insanity
- NRD INTEGRATION: reworked and improved:
Destroy + Create
simplified toRecreate
(Destroy
is still there)- added support for D3D11/D3D12/VK native objects (i.e. wrapping to NRI objects implemented "under the hood")
UserPool
reworked toTexture (API specific) => Resource (texture + state) => ResourceSnapshot
- added option
autoWaitForIdle
- fixed using a descriptor pool which has not finished execution yet (the issue appeared only once on the 2nd frame)
- NRD sample extended to show ALL possible variants of using NRI based integration
- REBLUR/RELAX: improved specular tracking in general, but worsened on concave surfaces (see
NRD_USE_SPECULAR_MOTION_V2
) - REBLUR: fixed rare light leaking caused by a greedy disocclusion threshold relaxation
- REBLUR:
viewZ
for the next frame must be copied withsky
pixels - REBLUR: misused
curvatureAngle
replaced withcurvatureAngleTan
- REBLUR: fast history logic should use
virtualHistoryAmount
before fallback - VK: reduced gaps between bindings to optimize memory usage of
DescriptorSets
- VK: made useless UAV format validation happy
- CMake: added
NRD_NRI
option (OFF) to pull, build and include NRI into NRD SDK, required by NRD integration (Deploy
script enables NRI for completeness) - CMake: removed unnecessary SSE4.1 flag
- CMake: deleted
NRD_DISABLE_SHADER_COMPILATION
since it doesn't make any sence. NRD shaders get compiled by ShaderMake, which can be built for any (?) platform. In the nearest future tons of semi-manually crafter stub-shaders (entry points) will be replaced with permutations generated by ShaderMake - Scripts: use all available cores for building
- Actions: significantly reduced task time
- improved docs
- added
.clang-format
v4.14.3
v4.14.2
v4.14.1
v4.14.0-fixed
HIGHLIGHTS:
- REBLUR: fixed wrong order of arguments breaking
virtualHistoryAmount
delivery to the Temporal Stabilization pass - same as v4.14.0
v4.14.0
HIGHLIGHTS:
- REBLUR: improved performance (+6% in non-SH mode, +10% in SH mode)
- REBLUR: reduced memory usage (-10% in all modes)
- REBLUR: outputs are not used as history buffers anymore! (removed inter-frame dependencies)
- REBLUR: improved IQ by regaining more contact shadows
- RELAX/REBLUR: more flexible
material ID
support - RELAX/REBLUR: improved specular motion calculation:
- less dependent on curvature related hacks
- better IQ on bumpy and wavy surfaces (common) in exchange of worsened IQ on concave mirrors (rare)
- but there is a potential to get back specular motion acceleration on concave surfaces
- old method is still available under
NRD_USE_SPECULAR_MOTION_V2
macro switch (defined inCommon.hlsli
)
DETAILS:
- REBLUR: removed "hitDistance" related antilag settings (AO/SO is not temporally stabilized anymore)
- REBLUR: relaxed angular disocclusion checks if parallax is very small (~0 motion)
- REBLUR: temporal stabilization pass now operates only on luminance
- REBLUR: lots of C++ code changes to reflect changes in texture layouts
- REBLUR: fixed potential slightly lighter outline on border of material IDs
- RELAX/REBLUR:
enableMaterialTestFor...
replaced withminMaterialFor...
to makematerial ID
test more flexible - RELAX/REBLUR: exposed hidden "gem" setting
minHitDistanceWeight
, which is handy for RESTIR/RTXDI-produced signals (default matches old behavior) - RELAX: added missing "specMinHitDistanceWeight" adjustment by "smc"
- CMake: added support for
CMAKE_MSVC_RUNTIME_LIBRARY
coming from the parent project - CMake: added INTERFACE target "NRDIntegration"
- updated ShaderMake
- cleanup
v4.12.0
HIGHLIGHTS:
- RELAX/REBLUR: returned back
historyFixBasePixelStride
to maximize flexibility (the default matches old behavior) - CMake: various improvements
DETAILS:
- NRD: improved
NRD_STATIC_LIBRARY
support - GIT: removed
MathLib
andShaderMake
submodules (conditionally downloaded viaFetchContent
) - CMake: made
Include
folder PUBLIC for comfortable use in the parent project linking NRD - CMake: adjustments
- CMake: added INTERFACE target
NRDIntegration
- RELAX/REBLUR: returned back
historyFixBasePixelStride
- REBLUR: slightly boosted performance in the performance mode
- RELAX: minor code cleanup
- updated docs
v4.11.4 (fixed)
REBLUR/RELAX: fixed a critical regression breaking the Pre-pass logic