Hello @xHybred! (and future readers)
Obviously, we are in the same boat. Bit late to noticing this post but in order to allow low frame accumulation, you first need a small jitter sequence to prevent the view from stuttering a bunch. This is why when you lower the AASamples CVAR you can raise the TAA frame weight much higher without encounter insane jittering as fast.
What I mean by jitter sequence is for example the Decima TAA has only 2 positions in the jitter sequence as show here:
UE5 currently locks the jitter pattern to 8 positions as you can see for yourself when TSR is enabled.
You can change the value 8 to 2 which If I’m not mistaken(@Guillaume.Abadie?) will force TSR to utilize the same jitter sequence as TAA with r.TemporalAA.Samples 2 but as you can see, the 2 coordinates are more similar to the SMAATX shown in this paper(page 8, upper left corner).
Replace the code lines here with:
float SamplesX[] = { 0.0f/16.0f, -8.0/16.0f };
float SamplesY[] = { -8.0f/16.0f, 0.0/16.0f };
Put r.TemporalAAFilterSize to 0.09 or you might get a black screen.
To my knowledge, these are the coordinates used in the Decima paper.
Unfortunately, you’ll still need to:
Modify TSR’s or TAA shaders to limit the history to the previous frame
Run SMAA(FXAA is not acceptable on modern hardware, blurry, has serious quality issues) before the frames are blended or spatial upscaling is done.
Implement some form of a 200% buffer so motion isn’t blurred. In the Decima paper, the speak about checkerboard rendering, but in the slides they show how the Decima pattern works well for small scale interpolation to:
And its specilization of the UGameUserSettings also sets r.Tonemapper.Sharpen=0.5 when using TAA, TSR or DLSS.
On compressed video it’s not really noticeable, but sharpening is really ugly on fortnite. I thought it was my screen or something. Sharpness and clarity are not the same. The only reason why the Decima TAA used sharpening was becuase of the FXAA, with something like SMAA which has 99% the same clarity as No AA/MSAA and one past frame+200% spatial buffer, a sharpener shouldn’t be needed and clarity will a a lot further.
TSR holds on to old frames for a crazy about of time which I imagine isn’t very good for performance, with a short frame history, you don’t need to compute so much nor should disocclusion artifacts so extreme.
I’ve actually done tons of testing regarding AA, and the only advantage 1080p with 4xSSAA(4k) vs 1080p with SMAA is thin and specular sampling, which is exactly what the Decima coordinates are meant to tackle.
EDIT: Changing the value from 8 to 2 is only half the job as I just recompiled my source biuld, you also need to delete this if statement and the logic inside.
EDIT: Changed coordinates after analyzing the resolve in HFW, they are now correct & added the filtersize warning.