Repository navigation
Conversation
github-actions
Bot
force-pushed
the
auto-exposure-pr-source
branch
from
September 17, 2026 22:36
12a281a to
082100e
Compare
github-actions
Bot
force-pushed
the
auto-exposure-pr-source
branch
from
September 19, 2026 16:37
fb4c88f to
e67e2df
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds automatic exposure support to DLSS-NR, significantly extends the available Trim range for the game's own exposure, and adds Trim Anchor Points for precise scene-dependent fine-tuning.
Motivation
A dynamically changing White Point is important for maintaining consistent DLSS-NR image quality across scenes with very different lighting conditions. In practice, many games do not provide an exposure resource that OptiScaler can use, leaving DLSS-NR without a usable dynamic White Point.
The new Automatic exposure mode addresses this by calculating exposure directly from the original linear HDR image. Based on testing across several games, a 5x Trim proved to be a useful starting point for this calculated exposure, so Automatic exposure now defaults to 5x Trim.
This default applies only to Automatic exposure. The game's own exposure still defaults to 1x Trim.
There is also another problem with game-provided exposure: its scale can vary significantly between games and sometimes the values are much lower than expected.
One example is Marvel's Spider-Man Remastered. When XeSS is replaced with DLSS through OptiScaler, the game's exposure becomes available to OptiScaler, but the reported exposure is low enough that achieving the desired DLSS-NR White Point can require a relatively large Trim multiplier.
For cases like this, this PR significantly increases the available Trim range for the game's own exposure instead of assuming that values close to 1x will always be sufficient.
Trim Anchor Points
A single fixed Trim value may still not be enough to maintain the desired DLSS-NR result across the full lighting range of a game. A value that works well in bright outdoor scenes may not be optimal in dark interiors, or vice versa.
To address this, both:
can optionally use Trim Anchor Points.
Each Anchor Point associates the current Base White Point with a selected Trim value. With multiple Anchor Points, Trim is interpolated between them as exposure changes.
This allows much more precise fine-tuning while keeping the White Point dynamic, making it possible to preserve good DLSS-NR image quality in both highlights and shadows without relying on a single compromise Trim value.
If no Anchor Points are configured, the normal Trim slider is used exactly as before.