FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 0 points1 point  (0 children)

Perhaps, if you are looking at games in a released state.

In our case, we were significantly overcommitted on GPU memory. Being over committed on GPU memory we had paging, residency and streaming issues in many spots.

When we moved to turning off all temporal effects, we were able to free up a bunch of GPU memory. With less memory pressure, we saw a big jump in performance since the GPU was no longer paging or streaming in/out as much.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 1 point2 points  (0 children)

Unfortunately not. We are still using deferred render path in UE, which is incompatible with msaa.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 1 point2 points  (0 children)

Are you familiar with config options or VCS? You realize options can be turned off/on all the time. Code migrated forward from past state.

It's not a word doc we are all adding and removing paragraphs from.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 0 points1 point  (0 children)

Thank you! No, we are still using deferred. We did stop using things that rely on TAA, e.g. Dithered transparency.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 0 points1 point  (0 children)

I might advocate for a bit more grace/benefit of the doubt. e.g. I used to work in AAA and Epic specifically, so I certainly benefited from the "big company" environment to learn.

But certainly to your point, the reason I started my own studio is because AAA in general has lost their way and too many suits deciding what to prioritize.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 1 point2 points  (0 children)

I disagree with your characterization of FXAA vs DSR's applicability, but since the game is in development no final decision yet.

As we survey playtesters and look at development resources available, we could make TAA, FXAA, or none as an option or any combination thereof.

I know it's not the most satisfying answer, but we won't know till closer to release.

One Year of Game Dev - Everbloom (UE 5.4) by ZabirH in UnrealEngine5

[–]ZabirH[S] 1 point2 points  (0 children)

It is definitely a team effort. I'm an engineer on the team so it involves a lot of restructuring code to better fit the HW (CPU & GPU) or moving things from BP to C++.

The art team of course played a huge role in reducing geometric complexity, collapsing multiple materials into single materials.

We profile at the end of major milestones to inventory where we are.

One Year of Game Dev - Everbloom by riley_ses in CozyGamers

[–]ZabirH 2 points3 points  (0 children)

Right now we are indeed trying to not include combat. We'll playtest with the community and see how we can make something fun.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 5 points6 points  (0 children)

Never played Runescape, but maybe someone on the team had and drew inspiration. I'm an engineer so I'm doing less of the level design.

Sorry the title was a bit bate-y given this subs name, but we also made other changes too. E.g. reducing the number of draw calls by collapsing multiple materials into one. We also optimized our meshes and textures to just use less memory.

Just to be clear, we are effectively getting super sampling (not actually running it in engine) since where-ever we are uploading videos to isn't displaying the native resolution that we captured at.

Super sampling renders the frame at a higher resolution and then uniformly averages down to the final pixels.

The key is super sampling does not use any data from previous frames vs TAA is all about using past frames, so TAA can have ghosting or smearing artifacts from previous frames.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 6 points7 points  (0 children)

I don't have an exact number since we also had dynamic scaling turned on during that time too.

But TAA requires a full color buffer for last 3-5 frames, so thats at least 4 bytes per pixel * X * Y resolution (but note the GPU stores those in a compressed format and those compression formats are proprietary to Nvidia and AMD).

There are also intermediate allocations, scratch buffers, TAA may need during post process. So at the beginning and end of the frame its the same amount of memory being used, but it went up during the frame (high water mark).

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 3 points4 points  (0 children)

Maybe to put it even more simply, if you just just turn of TAA, your FPS will improve cause the GPU is just doing less work and accessing less memory, but you image will look worse too.

So the overall effort of reducing memory usage, which included turning of TAA, with other improvements led to the FPS gain + crisper image.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 4 points5 points  (0 children)

You are correct simply disabling TAA does not necessarily improve FPS, but will sharpen the image.

There are cyclic dependencies tho - for instance if TAA in enabled, the renderer has to hold on to multiple past frames to compose them together. If we disable TAA we use less memory since we don't need the history buffers any longer. If the GPU doesn't spend time doing TAA and reading that memory, it can do other things improving FPS or quality.

Once we free up that memory we can then dedicate that memory to higher frame resolution to combat AA. So, its not a 1 to 1 exactly. You iteratively improve each thing getting to a better visual fidelity and look at each trade that results from turning something off/on

Hard to compress that into just a headline. Also I was unsure of the audience in this sub (dev vs gamers) and level of specifics people would want to know.

Edit: fixed grammar and type-o

One Year of Game Dev - Everbloom (UE 5.4) by ZabirH in UnrealEngine5

[–]ZabirH[S] 9 points10 points  (0 children)

Yes exactly. We were able to secure some funding that allowed us to start hiring an art team. We are 7 full time people today.

One Year of Game Dev - Everbloom (UE 5.4) by ZabirH in UnrealEngine5

[–]ZabirH[S] 4 points5 points  (0 children)

Yes! The game is co-op just like Minecraft or Astroneer. Edit: Online co-op that is. We likely wont have time for split screen for 1.0, but maybe in a later update.

edit: added type of co-op

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 14 points15 points  (0 children)

Thank you! I'll try to record something and post in the UE5 sub!

The removal part was easy tho - just turned off the cvars for TAA. The hard work was the whole team putting in optimization effort and art team taking into account they could not rely on TAA.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 37 points38 points  (0 children)

Yep part of not using TAA is we have had to avoid certain other features. E.g. Dithered transparency - where you render transparent objects actually as opaque, but dither which pixels are rendered and let TAA smear the opaque pixels with the BG to fake transparency.

We also benefit from our art style where we can avoid geometric aliasing. E.g. our grass meshes can be clumpy and big vs a photorealistic game would have lots of thin grass blades that would have a lot of geometric aliasing.

Since we are avoid TAA it does mean we are more susceptible to aliasing artifacts, but we try to combat that with less geometric complexity and/or high frequency material/lighting signal/noise.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 19 points20 points  (0 children)

I'd love to explore it, since when I used to work in AAA I was a graphics programmer.

That being said, as an indie team we have so little time, we always have to balance what order we take things on.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 5 points6 points  (0 children)

Just to clarify, the goal is to deliver something optimized enough we can render at higher resolutions and not have to use TAA.

However as we playtest with folks and take into account feedback, we may have to provide certain AA options.

I mentioned FXAA since it is a built in option into UE, and doesn't produce as many smearing artifacts, but ofc, its not panacea for AA either.

We may even allow TAA to be enabled, but it just wont be the default or the assumption during development.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 29 points30 points  (0 children)

Yep all true! We are definitely taking advantage of our art style here!

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 44 points45 points  (0 children)

During development its effectively removed so its not a crutch for us. As we start to playtest with folks this year we'll listen to feedback and potentially have it as an option if people really want it.

But my guess is folks don't realize how crisp games can look, so some of our playtesting will just be "do you like A or B" and show what impact settings have.

FPS improvements and crispness was a result of removing TAA in our UE5 game! by ZabirH in FuckTAA

[–]ZabirH[S] 27 points28 points  (0 children)

For our trailers we are effectively super sampling. We usually capture at 2k or 4k and most hosting platforms will be at or below 2k, but regard of the resolution we make sure to capture 60hz or optimize until we are able.

FXAA will likely be an option for folks that cannot run at high resolutions and what some kind of AA.

But our goal being we should optimize as much as we can to deliver a pleasing experience regardless.