Displaying dynamic text in the word (Widget Components and TSR artifacts)

Hey! I’m trying to display dynamic text in the world — like a big screen showing the number of enemies defeated.

So far, I’ve been using a Widget Component attached to a Blueprint actor placed in the level. It works, but I’m getting severe ghosting artifacts when updating text on the widget while using TSR as the anti-aliasing method.

After spending two days troubleshooting this, I’ve found two partial solutions:

  1. Set the Widget Component’s material translucency pass to “After Motion Blur.”,This completely removes the ghosting, but the result looks overly sharp and aliased — the edges of both the widget and text become jagged and visually unpleasant.

  2. Switch to a different anti-aliasing method:,

  • FXAA: eliminates the ghosting but looks overly blurred and lacks visual clarity.,
  • MSAA: looks good but requires Forward Rendering, which disables several features I’d like to use to make the game visually appealing.,
  • TAA: a decent compromise, but I’d still prefer the quality of TSR if possible.

Has anyone found a better solution for clean world-space UI rendering with TSR enabled? I’d really appreciate any tips, workarounds, or resources you can share. Thanks in advance!

This won’t fix the problem entirely, but you can also try enabling “Responsive AA” in the material to get it slightly sharper.

1 Like

Thanks for the quick response! I should have clarified earlier — I already have “Responsive AA” enabled and checked the other relevant material settings. While that did help a bit, it didn’t fully resolve the issue.

I’ve read several other posts about this problem and have probably tried almost every suggested workaround. It makes sense to me that this behavior occurs, especially considering that TSR relies on data from previous frames to improve image quality.

I’m also aware that widget components don’t work well with TSR, but so far I haven’t found a better way to implement this kind of in-game screen. That’s why I’m hoping someone out there has done something similar and came up with a clever solution to make it work well and look beautiful.