Skip to content

Releases: NVIDIA-RTX/RTXPT

v.1.8.1

05 Mar 16:33
62b7d5c

Choose a tag to compare

Summary

  • Performance optimizations (25-30%+ perf gain over 1.7.x with comparable or better quality)
  • New performance/quality presets in "Display and performance" allow for better scaling from low end to high end GPUs
  • New modes in bistro-programmer-art scene for stress testing animation and dynamic lighting scenarios (see 1, 2, 3, 4)
  • Fixes for a number of DLSS-RR denoising stability issues in reflected/refracted surfaces
  • DirectX SER and Opacity Micromaps are now available when Agility SDK 1.619 is enabled (default, requires DXR 1.2 driver support; to disable, remove Agility SDK 1.619 from CMake settings)

Details

  • Main path tracer has been cleaned up and optimized to reduce register pressure (reducing spill/fill) and divergence (increasing active thread %)
  • 5 different performance settings have been added, and a number of different features connected to them, allowing for almost 10x perf scaling at same resolution
  • A number of the settings are now baked into shaders as macros, allowing shader compiler to better optimize code, eliminate loops and etc.
  • Bistro has more emissive materials, more mirrors and specular materials, more lights (up to 400k, a lot of which dynamic) and moving objects
  • Multiple material permutations now supported to allow for completely different BSDF/material handling in ClosestHit
  • Significant NEE-AT and general lighting improvements both on simplification, bug fixing, performance and quality
  • Improvements to multi-layer DLSS-RR denoising with better handling of motion vectors on curved surfaces
  • Significant reduction to memory use - we're now under 7.5GB of VRAM in Bistro at 4k with DLSS-RR Balanced
  • Grand refactor to allow for future addition of multiple code samples (and parts of one that is already in the works)
  • Basic scripting to allow automatic screenshot output with plethora of parameters for automated testing
  • SER and OMM are now first class citizens via DirectX Agility SDK 1.619
  • Many other unaccounted fixes and tweaks

v.1.7.0

22 Oct 13:37
5e02871

Choose a tag to compare

Summary

  • New scene (bistro-programmer-art.scene.json) for stress testing animation and dynamic lighting scenarios
  • Performance optimizations (~10% perf gain over v.1.6.0)
  • DirectX (Preview Agility SDK) Opacity Micromaps

Details

  • New bistro-programmer-art.scene.json scene set up for stress testing animation and dynamic lighting scenarios such as moving objects, dynamic lighting and environment.
  • Native DirectX Opacity Micromaps (available with Preview Agility SDK)
  • Reference image accumulation: fixed bugs related to consistency between runs, added "pre-warm caches" so that temporal techniques can produce full quality from 1st accumulated frame
  • Experimental: analytical lights now support proxy geometry so they can have physical representation
  • Procedural sky bugfixes
  • Reworked spec/diff radiance codepaths - they're mostly merged now to reduce live state and memory use
  • Experimental: NEE-AT guided light sampling upgrades and fixes
  • Few fixes for SPIR-V shaders and Vulkan
  • isThinSurface now disables refraction during transmission to (roughly) approximate ray entering and immediately leaving a very thin surface
  • NRD, Donut, NVRHI & other submodule updates
  • Skinned meshes now properly updated instead of being rebuilt from scratch every frame.
  • Streamline now works with Vulkan
  • Assets submodule now relies on LFS, and should only checkout a shallow copy
  • PathPayload reduced from 96 to 80 bytes
  • Misc path tracer refactoring

v.1.6.0

31 May 00:59

Choose a tag to compare

Summary

  • Quality and performance (10-15%) improvements
  • DirectX Shader Execution Reordering preview example
  • Refactoring, bug fixes, optimizations

Details

  • Updated to latest Streamline v2.7.30, which among other things brings DLSS-RR Preset E with significant improvements to image stability and quality
  • Updated to latest DirectX Shader Compiler v1.8.2505, which is now downloaded via CMake script
  • Added ability to optionally download and integrate DirectX AgilitySDK via CMake script
  • Added DirectX Shader Execution Reordering code path example - this requires DirectX AgilitySDK 717-preview and special graphics driver, see README.md for details
  • All ray tracing shaders are now compiled at runtime, allowing for a higher number of permutations, which allows shader specialization based on settings and enabled features; this helps with performance, complexity and unlocks future upgrades
  • New material saving/loading to support sharing of materials between scenes and future work
  • Various performance and quality improvements with NEE-AT light importance sampling
  • Various image quality & correctness bugfixes
  • Bloom effect & placeholders for post-process effects
  • Minor tweaks to scene materials
  • UI upgrades, zoom-tool for zooming in screen region (Ctrl+Z) and few other debugging improvements
  • Various misc optimizations for a total combined performance boost of around 10-15%

v.1.5.1

21 Mar 15:06
7d07c8c

Choose a tag to compare

Summary

Critical bugfix and a couple of minor upgrades

Details

  • Fix for NRD-related submodule related compile errors caused by unwanted Cmake-fetch library update
  • Update to "DX Compiler release for February 2025"; unfortunately this update breaks HLSL printf string support so that is disabled until alternatives found.
  • Added screenshot helpers ("grab screenshot with a delay", "grab sequence"). W.I.P.
  • Added jitter support for NEE-AT tiles to avoid DLSS-RR blocky artifacts; few other minor optimizations and tweaks

v.1.5.0

14 Mar 20:00

Choose a tag to compare

HIGHLIGHTS

  • DLSS-RR now integrated, with multi-layer denoising guide buffers, offering both performance and quality improvements
  • Lighting refactor: all light sources (local - analytic, emissive triangle, etc, distant - analytic, environment) are now importance sampled together in NEE as a single (polymorphic) type, with correct MIS vs direct path hits on emissive triangles or environment map
  • New work-in-progress light importance sampling approach (NEE-AT)
  • Across the board optimizations to the path tracer and refactoring of many subsystems such as materials, as well as updates to most external libraries

v.1.3.0

25 Jan 20:44

Choose a tag to compare

HIGHLIGHTS

  • Environment map refactor: dynamic procedural skies, higher resolutions, runtime texture compression and baking of directional lights now supported.
  • SDK updates bringing feature, image quality improvements and bug fixes.
  • Various smaller path tracer updates and features.

DETAILS

Features and changes

  • Grand environment map refactor:
    • Switched to cubemaps as the backing & sampling format (was previously equirectangular 2D texture).
    • Added support for dynamic update and added a procedural environment example based on https://github.com/NVIDIA/Q2RTX sky & clouds.
    • Upgraded importance sampling and RTXDI bridge code to support cubemaps and dynamic environments.
    • Support for importing high res pre-baked .dds cubemap environments (in addition to equirectangular).
    • Support for dynamic GPU-based BC6U compression.
    • All positionless directional-only analytical lights are now automatically baked into environment map, simplifying the lighting code.
    • Added variants of existing scenes with enabled procedural sky.
    • Added a large number of high resolution example environment maps in cubemap format (4096 x 4096 x 6, BC6U) to the media repository.
  • Shader compiler now using ShaderMake.
  • Updated to DXC HLSL compiler v1.7.2308 and fixed & switched all shaders to HLSL 2021.
  • Updated to Streamline v2.2.1 with various performance optimizations and bug fixes.
  • Updated to latest RTXDI sdk-only branch which includes various fixes and refactoring from v2.1.0.
  • Updated to newer NRD version v4.3.6 with a number of image quality upgrades and fixes.
  • Added optional shadow rays NoL fadeout (exposed as part of material options) useful in hiding self-shadowing artifacts with low-poly geometry.
  • Added support for the new Bounded VNDF sampling.
  • Added ability to boost NEE light sampling for primary surface (exposed as UI option).
  • Experimental automated image based regression testing.

Bug fixes

  • Vulkan stability fixes.
  • OMM memory leak and stability fixes.
  • Various UI and other smaller fixes.
  • Fixed tangent space being wrong with normalmaps in certain cases, causing incorrect lighting.

Known issues

  • Vulkan port has some missing features such as SER and BC6U runtime compression for environment maps

v.1.2.0

24 Aug 21:38

Choose a tag to compare

HIGHLIGHTS

  • Significant core path tracer light sampling improvements - reduced noise and artifacts.
  • Various features, bug fixes, improvements and SDK updates.

DETAILS

Features and changes

  • NEE (Next Event Estimation) light importance sampling was refactored and support was added for local light importance sampling (uniform, power, ReGIR). NEE in general is now better separated from the rest of the codebase and supports adjustable number of light samples for distant and local lights. This provides much higher core path tracer lighting quality at the expense of some added cost.
  • ReGIR (world space grid mode) now works in both NEE and RTXDI ReSTIR DI modes.
  • Added ability to do per-pixel supersampling in realtime mode for higher quality & better reference output.
  • Added low discrepancy sampling (only on path BSDF for now), based on Practical Hash-based Owen Scrambling.
  • Upgraded to NRD 4.2.2 (see https://github.com/NVIDIAGameWorks/RayTracingDenoiser) and improved denoising default settings.
  • General code cleanup & refactoring.
  • Upgraded Streamline and OMM submodules.

Optimizations

  • Environment map presampling implemented for NEE importance sampling - it saves enough compute to allow for doing 2 samples instead of one!
  • Various other minor upgrades.

Bug fixes

  • Fix for NEE and RTXDI lighting bugs with diffuse or rough transparent surfaces.
  • Analytic spotlight light type now works.
  • Various UI fixes.
  • Various smaller fixes.

Known issues

  • Distant analytic lights are non-functional in some cases.

v1.1.0

20 Jun 14:38
a0da071

Choose a tag to compare

HIGHLIGHTS

  • Significant baseline performance (~30%) improvements
  • Added DLSS Super Resolution, DLSS Frame Generation and Reflex
  • Various bug fixes, Vulkan improvements and SDK updates

DETAILS

Optimizations

  • Path tracer performance pass: better RR, removing redundant BSDF math, removing SER from non-random (stable) path decomposition pre-pass, etc.
  • Texture MIP computation is now precomputed
  • RTXDI now uses compressed GBuffer to significantly reduce memory bandwidth required as well as the size
  • RTXDI now uses fused ReSTIR DI and ReSTIR GI apply pass to reduce unnecessary loading & processing
  • Using tiled-swizzled packing for GBuffer and stable planes for more cache-friendly access patterns
  • various other shader optimizations

Bug fixes

  • fix for autoexposure bug causing overdarkening at certain resolutions
  • fix for RTXDI bug causing blocky artifacts from low probability samples in disoccluded areas (i.e. when quickly turning camera)
  • fix for RTXDI bug causing incorrect light resampling resulting in overly sharp shadows
  • various Vulkan-related fixes
  • various denoising (NRD) fixes
  • various path decomposition fixes
  • fix for random number generator seed being same on vertex 0 and 1 in some cases
  • OMM fix for crash/hang when loading Sponza (#6)

Features and changes