Skip to content

rtx: Add more firefly filters#309

Merged
jeffamstutz merged 3 commits into
NVIDIA:next_releasefrom
tarcila:firefly-filter
Jun 11, 2026
Merged

rtx: Add more firefly filters#309
jeffamstutz merged 3 commits into
NVIDIA:next_releasefrom
tarcila:firefly-filter

Conversation

@tarcila

@tarcila tarcila commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Besides the existing default tonemap, this PR adds clamp and trim filtering modes.
tonemap tends to dim bright lights too much for the sake of stability at low sample count.

The new clamp and trim provide new filtering trading memory and performances for quality.

Below are unfiltered (left), tonemap (middle), trim (right) at 32 spp.
image

tarcila added 3 commits June 10, 2026 22:30
parseANARIObjectInfo dropped the declared default for ANARI_STRING
params (parseValue returns empty) then forced the first listed value, so
every string-enum object param ignored its metadata default. The
renderer UI showed fireflyFilterMode=none even though the device
declares tonemap. Read the default string straight from the metadata and
select it when it names one of the enum values.
Better keep image dynamic compared to `tonemap`.

`tonemap` is still the default, so default rendering is unchanged.
The old `fireflyFilter` / `tonemap` bools are gone -- pre-1.0, no back-compat.
New per-pixel firefly filter: an upper-trimmed mean (robust statistics)
that picks which samples to drop with a Grubbs/ESD outlier test.
@tarcila tarcila changed the title Firefly filter rtx: Add more firefly filters Jun 10, 2026
@tarcila tarcila requested a review from jeffamstutz June 10, 2026 23:16

@jeffamstutz jeffamstutz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@jeffamstutz jeffamstutz merged commit ccc850f into NVIDIA:next_release Jun 11, 2026
20 checks passed
@tarcila tarcila deleted the firefly-filter branch June 11, 2026 12:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants