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.