DASR - Differential Adaptive Shimmer Reductor
- Baudelaire
- Topic Author
Less
More
2 months 3 weeks ago #1
by Baudelaire
DASR - Differential Adaptive Shimmer Reductor was created by Baudelaire
Hi, this is a shader i've been working on lately with a precise purpose : reduce image instability such as shimmer, moiré patterns and noisy high-frequency like fireflyes while preserving as much real detail as possible.DASR is mainly designed for games and engines that do not provide any temporal reconstruction or advanced anti-aliasing solution or a too blurry TAA implementation.
Older or lightweight engines can often expose strong subpixel instability, crawling patterns and aliasing artifacts that are normally handled inside the rendering pipeline.This shader cannot replace a native TAA/temporal reconstruction solution, and it has the usual limitations of a post-process approach, It has no access to motion vectors, material information or the original rendering data available to engine-integrated solutions.However, for cases where those tools are not available, DASR aims to provide a way to improve image stability.The shader is still evolving, but it has reached a point where I think it is ready to be shared and tested.
Github : DASR
Older or lightweight engines can often expose strong subpixel instability, crawling patterns and aliasing artifacts that are normally handled inside the rendering pipeline.This shader cannot replace a native TAA/temporal reconstruction solution, and it has the usual limitations of a post-process approach, It has no access to motion vectors, material information or the original rendering data available to engine-integrated solutions.However, for cases where those tools are not available, DASR aims to provide a way to improve image stability.The shader is still evolving, but it has reached a point where I think it is ready to be shared and tested.
Github : DASR
Please Log in or Create an account to join the conversation.
- johnnyjackson1
Less
More
2 months 3 weeks ago - 2 months 3 weeks ago #2
by johnnyjackson1
Replied by johnnyjackson1 on topic DASR - Differential Adaptive Shimmer Reductor
Could this shader help with reducing flickering/flashing in games? While I'm not diagnosed as photosensitive, I just don't like games that have a lot of fast flashing/flickering going on, like a lot of older NES/SNES games have on stuff like UI elements and characters. I would gladly trade-off a flicker-free experience with some latency.
Last edit: 2 months 3 weeks ago by johnnyjackson1.
Please Log in or Create an account to join the conversation.
- Baudelaire
- Topic Author
Less
More
2 months 2 weeks ago #3
by Baudelaire
Replied by Baudelaire on topic DASR - Differential Adaptive Shimmer Reductor
if you mean big flash of lights that covers almost entirely the screen, probably not, if you mean little sparkle or too bright sprinkles, this shader will help to attenuate the effect, but the more you will reduce the flickering/shimmering the more ghosting will probably happen, try to tune up the amount of fps for history and the sliders related to ghosting, there could be a promising tradeoff.
keep in mind that i designed this shader while observing a specific problem occurring in train simulators under various light perspective, the shimmer and flickering i focused on minimizing were the so called "fireflyes" or "sparkle" and the little thin reflection that occur on the tracks or metal object borders
keep in mind that i designed this shader while observing a specific problem occurring in train simulators under various light perspective, the shimmer and flickering i focused on minimizing were the so called "fireflyes" or "sparkle" and the little thin reflection that occur on the tracks or metal object borders
Please Log in or Create an account to join the conversation.
- johnnyjackson1
Less
More
2 months 2 weeks ago #4
by johnnyjackson1
Replied by johnnyjackson1 on topic DASR - Differential Adaptive Shimmer Reductor
I meant like flashing elements like when characters getting hit or flashing UI elements. I don't mind some ghosting and will try out the shader later, thanks.
Please Log in or Create an account to join the conversation.
- johnnyjackson1
Less
More
2 months 2 weeks ago #5
by johnnyjackson1
Replied by johnnyjackson1 on topic DASR - Differential Adaptive Shimmer Reductor
The following user(s) said Thank You: Baudelaire
Please Log in or Create an account to join the conversation.
- Baudelaire
- Topic Author
Less
More
2 months 2 weeks ago #6
by Baudelaire
Replied by Baudelaire on topic DASR - Differential Adaptive Shimmer Reductor
my bad, when updating the code, instead of swapping two comments i duplicated the entire shader, solved now, thanks for the bug-report, tested on derail valley with reshade 6.7, working.
Please Log in or Create an account to join the conversation.
- Baudelaire
- Topic Author
Less
More
3 days 6 hours ago #7
by Baudelaire
Replied by Baudelaire on topic DASR - Differential Adaptive Shimmer Reductor
Update: DASR-Core a lightweight and more visually robust yet simpler shader based on dasr.After months of thinking about how heavy and still not completely satisfactory the original DASR was, i decided to try a different approach: keeping the core idea that work, simplify the detection/correction pipeline, and focus more directly on the shimmer that actually makes an image uncomfortable to look at.
The result is DASR-Core, a complementary shader designed to deliver stronger perceptual shimmer reduction with a more focused, lightweight approach.
The main differences from the original DASR:
Grid-driven risk detection: Grid-Brick identifies sampling-sensitive details instead of automatically treating every edge as something to filter.
Local temporal matching: compares grid signatures between frames to estimate plausible local movement, without requiring engine-provided motion vectors.
Separate luma/chroma suppression: independently controls brightness and colour instability.
Selective outlier repair: targets isolated temporal anomalies rather than blurring the image globally.
Optional depth-aware safeguards: help protect surface boundaries and validate temporal matches.Core has been particularly effective on moving fine details while producing a noticeably softer, less distracting result than the original dasr in the scenes I tested.
It doesn't eliminate every artifact but it suppresses much of the annoying shimmer while retaining a convincing level of detail. Paired with a conventional spatial AA pass such as CMAA2, the result is even better.The Core version is a complementary alternative, built around the idea that keep it simple make it work. Check the repo README for the technical breakdown and the new fx (link in the first post)
The result is DASR-Core, a complementary shader designed to deliver stronger perceptual shimmer reduction with a more focused, lightweight approach.
The main differences from the original DASR:
Grid-driven risk detection: Grid-Brick identifies sampling-sensitive details instead of automatically treating every edge as something to filter.
Local temporal matching: compares grid signatures between frames to estimate plausible local movement, without requiring engine-provided motion vectors.
Separate luma/chroma suppression: independently controls brightness and colour instability.
Selective outlier repair: targets isolated temporal anomalies rather than blurring the image globally.
Optional depth-aware safeguards: help protect surface boundaries and validate temporal matches.Core has been particularly effective on moving fine details while producing a noticeably softer, less distracting result than the original dasr in the scenes I tested.
It doesn't eliminate every artifact but it suppresses much of the annoying shimmer while retaining a convincing level of detail. Paired with a conventional spatial AA pass such as CMAA2, the result is even better.The Core version is a complementary alternative, built around the idea that keep it simple make it work. Check the repo README for the technical breakdown and the new fx (link in the first post)
Please Log in or Create an account to join the conversation.