Wave Intrinsic Shadow Denoising for Ray-Traced Penumbra Regions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional ray tracing methods for rendering soft shadows require a large number of shadow rays, leading to noisy shadow data that necessitate computationally expensive denoising, which can be inefficient and time-consuming.

Innovation Solution

Utilize threads of schedulable units in parallel processors to sample visibility and identify penumbra regions, enabling denoising without a post-processing pass by generating a penumbra mask to determine which pixels require denoising and adjusting filter parameters based on statistical values computed from ray-traced samples.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a large number of shadow rays are cast to sample lighting conditions, then shadow rendering accuracy is improved, but rendering time and computing resource consumption increase

Engineering Contradiction:
Improveshadow rendering accuracyVSAvoidrendering time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial sampling by casting a limited number of shadow rays per pixel rather than exhaustive sampling. Each pixel receives a small number of shadow rays (e.g., 1-4 rays), which is insufficient for complete coverage but sufficient when combined with denoising. This partial action resolves the contradiction by achieving acceptable accuracy without the time cost of full sampling.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent introduces denoising algorithms as an intermediary between sparse ray sampling and final shadow rendering. The denoising process acts as a mediator that takes noisy, sparsely-sampled shadow data and transforms it into clean, accurate shadow images. This intermediary enables the system to use fewer rays while maintaining rendering accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If shadow rays are sparsely sampled to conserve computing resources, then rendering efficiency is improved, but shadow data noise increases

Engineering Contradiction:
Improverendering efficiencyVSAvoidshadow data accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

Denoising algorithms serve as an intermediary that processes sparsely-sampled shadow data. These algorithms analyze patterns in the noisy data from limited ray samples and reconstruct accurate shadow information, enabling high rendering efficiency without sacrificing shadow data accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical approach of increasing ray count (brute-force sampling) with an algorithmic approach (denoising). Instead of mechanically casting more rays to reduce noise, the system uses computational algorithms to eliminate noise from sparse samples, achieving the same goal more efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If denoising is applied to all pixels including those outside penumbra, then comprehensive noise reduction is achieved, but computing resource consumption increases

Engineering Contradiction:
Improvenoise reduction qualityVSAvoidcomputing resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by differentiating denoising treatment based on pixel location. Pixels within penumbra regions (where shadows transition from light to dark) receive denoising processing, while pixels in fully lit or fully shadowed regions do not. This localized approach reduces computing resource consumption by applying computational effort only where it is visually necessary.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the image into different regions (penumbra areas vs. non-penumbra areas) and applies denoising selectively to specific segments. This segmentation enables the system to identify and process only those pixels that require noise reduction, avoiding wasted computational resources on pixels that do not benefit from denoising.

Inventive Principle:
Principle #1Segmentation

4Measurement precision

If a post-processing pass is used to generate penumbra mask, then accurate penumbra detection is achieved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvepenumbra detection accuracyVSAvoidprocessing pipeline complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges penumbra detection with the existing ray-tracing rendering pipeline. Instead of using a separate post-processing pass, the system integrates penumbra identification into the shadow ray sampling process itself. This merging eliminates the need for additional processing passes and reduces overall device complexity while maintaining accurate penumbra detection.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs penumbra detection preliminarily during the ray-tracing phase rather than as a subsequent post-processing step. By identifying penumbra regions while shadow rays are being cast, the system prepares the necessary information in advance, eliminating the need for a separate post-processing pass and reducing processing pipeline complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12505515B2Using intrinsic functions for shadow denoising in ray tracing applications
Publication Date: 2025.12.23 NVIDIA CORP
  • US12505515B2 patent drawing
  • US12505515B2 patent drawing
  • US12505515B2 patent drawing

AI summary

In examples, threads of a schedulable unit (e.g., a warp or wavefront) of a parallel processor may be used to sample visibility of pixels with respect to one or more light sources. The threads may receive the results of the sampling performed by other threads in the schedulable unit to compute a value that indicates whether a region corresponds to a penumbra (e.g., using a wave intrinsic function). Each thread may correspond to a respective pixel and the region may correspond to the pixels of the schedulable unit. A frame may be divided into the regions with each region corresponding to a respective schedulable unit. In denoising ray-traced shadow information, the values for the regions may be used to avoid applying a denoising filter to pixels of regions that are outside of a penumbra while applying the denoising filter to pixels of regions that are within a penumbra.