Except FXAA is pretty blurry as well (less than TAA but blurry is still blurry) and doesn’t fully take care of the jaggies either, it’s somewhere in the middle so to speak.
Anyway… no point in arguing… you clearly have a very different opinion on the matter… but try to understand that just because you are okay with the current AA options, it doesn’t necessarily mean they are good enough.
Especially when most games you can find today have MSAA
From:http://docs.cryengine.com/display/SDKDOC1/EaaS+3.7.0
CryEngine 3.7 seems to be also using a Temporal AA method, but maybe UE4 dev team need to do more research on how to avoid blurring and ghosting effects mostly of the Temporal AA.
Anyway, I still believe Temporal AA is the new trend of real-time rendering, which is also employed by the latest CryEngine. It can make good use of deferred rendering.
Look at this screenshot from 《RYSE》 game, the swaying grass also has a bit ghosting look, but the image overall looks slightly sharper and steady than the look of UE4 Temporal AA. So Epic don’t have to abandon current AA solution, but just improve it. If it can be optimized to the level as 《RYSE》 looks, that would be great.
I agree with .pareschi and I wouldn’t completly degrade TXAA. Every algorithim has its down/upsides and the usage can vary. TXAA helps a lot to keep the tiny speculars in check and is one reason why Infiltrator and the other demos has this smooth hollywood touch.
Currently I think we have those options for the end user:
No AA
FXAA
TXAA
r.ScreenPercentage 200
Different solutions can be added, but I think it should be already possible to add yourself an antialasing post effect.
Cryengine actually combines MSAA 2x with Temporal AA, they call it SMAA T2X, and it is proof that MSAA in a deferred renderer is completely feasible, the UE4 devs just don’t want to be careful in their shaders and deciding when to use sample-frequency vs pixel-frequency, here’s the presentation: http://www.crytek.com/download/Sousa_Graphics_Gems_CryENGINE3.pdf
It explains how to minimize perf impact of MSAA with custom SV_Coverage, how to do temporal reprojection right so that there’s very limited ghosting, etc.
The latest ‘build in VR for VR’ UE4 video (Build for VR in VR - Unreal Engine) shows INCREDIBLE TXAA artifacts on the 3d widgets because they are constantly jittering (motion controlled), because ue4 couldnt care less about having correct motion vectors (how long did it take to generate correct motion vectors for world displacement ? and we still dont have custom motion vector output in materials for things like UV-scrolling textures).
MY main issue with TXAA is that it DESTROYS fast moving particles - even with the option checked to “enable responsive AA” on said particles.
And anything that moves looks incredibly blurry. Yeah, TXAA removes aliasing better than FXAA, but I’d rather have minor jaggies than destroyed detail and blurriness. FXAA in UE4 actually seems better than a lot of other implementations I’ve seen of FXAA.
I’ve been trying to figure out SMAA myself but everything about the RHI system makes any kind of examples out there just about useless to me. I’m having a hard enough time figuring out RTV/SRV’s never mind the other passes.
Would be great if Epic gave us at least an option to have MSAA or something similar. FXAA looks sharp enough close up, but jaggies are sometimes too unbearable in the distance. So, gotta switch the Temporal back on, and the world becomes a blur. Just played some LeftForDead2. Can’t believe that a pretty old engine has such an amazing fidelity to it. No jaggies, no blurriness. They have a choice of MSAA and CSAA. Let’s hope Epic is cooking something up
I don’t necessarily agree that we need some kind of MSAA-derived solution, but I concur that the current TXAA implementation absolutely destroys image fidelity. It’s intensely frustrating that it’s tied into the reflections system because as others have pointed out, you can’t get proper reflection coherency as you’re still getting images that are several frames old.
I really don’t see the sense in implementing a solution that causes visual artifacts way more glaringly obvious to the player than aliasing. It’s like using a shovel to swat a fly.
That said, UE4’s FXAA implementation is surprisingly good.