UE 5.1.1 - Texture Pan results in horrible smearing

Hello there. We upgraded our project from 5.0 to 5.1.1. Pretty much everything went well, except for a rather annoying issue with panning textures - or really any movement within a material. I created a completely fresh project in 5.1.1 and replicated the issue rather easily. Worked fine in 5.0

We’re using TSR, and our velocity writes during base pass. So basically the exact same settings a newly created project uses (I changed nothing in this fresh project’s settings in the example above).

Any help would be much appreciated, because I’m at the end of my wits…

1 Like

Only workaround i’ve found so far is changing the material to translucent and checking “Output Velocity” in material details. Seems like a bug, i found a similar issue here Unreal Engine Issues and Bug Tracker (UE-164554) but that’s for Nanite WPO meshes. Maybe you can try submitting a bug report with your example project for reproduction?

unrealbugsubmissions.epicgames.com

I’ve noticed that TSR smears when modifying texture coordinates while TAA does not.
I suspect it is a bug. TAA must do some additional math to factor in UV velocities that TSR lacks.

1 Like

Just found these two console commands that completely fixed the texture smearing for me, try them out:

r.TSR.ShadingRejection.Flickering 0
r.TSR.ShadingRejection.Flickering.Period 1

2 Likes

that’s huge thank you.

Probably, this smearing can be eliminated using the Previous Frame Switch. The Previous Frame Switch takes as input world position offsets in the current and previous frames. If a material does not use vertex animation, then the Current Frame input should take a zero vector. The task is to calculate world position offset for the Previous Frame input that matches the texture animation. Here are some material snippets for UE 5.0 demonstrating the described principle and a more detailed explanation.

3 Likes

Indeed. One caveat is that this only works on a per vertex basis, so it will only help if the motion is generally consistent / smoothly interpolate across the entire face. Per pixel effects requiring different motion vectors for the same face cannot be fixed this way.

Hi, I think this could be an issue with TSR.

Maybe you can try swapping it with DLSS/ DLAA NVIDIA Plugin which doesn’t seem to have the same issue.

doesn’t seem to be working anymore, even tried disabling TSR, it didn’t help

There’s a new setting inside the material as of 5.4, I forget the exact name and I’m not on UE to check, but it’s something like “has pixel animation”. Checking this box is supposed to change how the AA reacts to texture pans and similar effects to prevent or reduce smearing.

2 Likes

Found it, it doesn’t work.

24-07-16

It was nonsense from me though that disabling TSR didn’t help, it solves the issue actually, but it’s quite disappointing that the setting doesn’t work (it says it’s there to solve exactly this issue in it’s tooltip).

The only solution seems to be to use MSAA or FXAA. TAA is also affected by this issue.

Also, it doesn’t just happen when velocity writes during base pass, it happens when it’s written on depth pass as well.

I recorded a video but couldn’t find a suitable site to upload it, it’s a shame ue forums doesn’t support videos.

Any solutions to this issue? I’ve been (occasionally) attempting to fix it every few months.