Digital Foundry Article Technical Discussion [2022]

Status
Not open for further replies.
xbbcin.JPG
 
slower might be the word that I should write instead of slowly. Let's just say that while it works on nVidia hardware is not nVidia-optimized code path
Well, the titles that AMD does well in are those with a much more minimal hit to enabling RT in the first place. And Nvidia is still ahead there in terms of the performance impact. In the "heavier" titles, such as Riftbreaker, Nvidia is ahead by seemingly a normal margin (30%+). So it's not clear that Nvidia is especially suffering.
 
TAA has come a long way from halo reach on 360(the first time I recall ever seeing it) but TAAs time is over. TAAU is the future, old man
Gotham Knights, the game I'm currently playing has TAAU4 and TAAU5 options in the menu. Gotta give them a try.

There is more to visual quality than 4K/8K and all that. I am a bit disappoint with 4K now that I have a 4K native TV. 😟Most games show many jaggies.

High fps adds visual quality, DLSS adds visual quality, and actually good AA adds visual quality.

Maybe I got spoiled playing Shadow of the Tomb Raider on the TV for 34 hours, with XeSS Quality on.

Shadow of the Tomb Raider is the cleanest game my eyes have seen. I thought the game looked like Disney animation movies -AA wise-.

The image below is from a DF video, internal 720p in both pictures, the one to the right with a pixel reconstruction technique. Spot any jaggie?

Rnbn4wv.png


Gotham Knights has a few flaws compared to Shadow of the Tomb Raider when it comes to cleanliness, but also has XeSS as an option and it looks gorgeous compared to most games.

I learnt to value how good Gotham Knights looks now that I've been testing the framerate of several games and so on. All of them with max settings 4K, and 120fps:

DmC Devil May Cry -maxed out, native 4k. 60fps, AA-. Jaggies everywhere.
Totally Reliable Delivery Service :mrgreen: -this one doesn't matter, it's just super fun, but still, 4K max settings, AA enabled and it is very jaggy-.
Warhammer Darktide
and so on and so forth.

The games I am currently playing one by one until completion all feature DLSS -which I play via wrapper-, XeSS or FSR 2 -when it works well-... Surely I play at 1m from my TV, but 90cm is the minimum recommended for a 50" screen, and when I start playing all the other games I have pending to complete, some of my gaming myths that used to impress so much are going to give me a slap of reality.
 
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂
 
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂
These are all temporal upscalers aren't they?
 
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂

These technologies (try to) achieve the same thing, though with different strategies and different results/performances.
 
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂
FSR 1.X doesn't really reconstruct to a higher resolution. It's mainly AA + sharpening filter. They really started doing image reconstruction (with motion vectors) since 2.0.
 
FSR 1.X doesn't really reconstruct to a higher resolution. It's mainly AA + sharpening filter. They really started doing image reconstruction (with motion vectors) since 2.0.
Yeah I was referring to the good FSR(2.x) not 1. 😂 Same with DLSS 2.0 and beyond

You know, it's extremely interesting how this kind of technology evolved directly out of anti aliasing technology which also at one point had a lot of different solutions. Now most of them are gone as temporal upscaling does both AA coverage and smart resolution upscaling at the same time....
 
FSR 1.X doesn't really reconstruct to a higher resolution. It's mainly AA + sharpening filter. They really started doing image reconstruction (with motion vectors) since 2.0.

This isn't really accurate. It's literally outputting a higher resolution from a lower internal resolution.

The only difference is FSR1 doesn't use a temporal component for the reconstruction - it's spacial only.
 
These are all temporal upscalers aren't they?
That's a misleading term IMHO as that's what frame interpolation would be, upscaling 30 fps content to 60 fps content. An upscaler also doesn't need a temporal element although that obviously helps, adn can combine numerous analysis elements. If you had a motion element, tracking motion vectors, would you call it a "motion upscaler"? So really I think image reconstructors, with qualifiers for attributes used (temporal, spatial, motion, object, etc.)

Of course, what people actually use will probably be illogical and fairly arbitrary. ;) Just like every user/owner of a game these days is referred to as a 'fan'. "Good news for our fans - we're fixing the buggy mess you hate and wish you hadn't spent money on."
 
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂
DF calls them pixel reconstruction techniques. I made a comparison on my 1440p monitor Gotham Knights. TAAU_Gen4 vs XeSS vs TAAU_Gen5 (all Ultra Quality setting). TAAU (Gen5) is an improvement over TAAU (Gen4). i.e. the detail of the windows in the building with the GSC logo is quite gone with TAAU_Gen4 but TAAU_Gen5 shows some extra detail. Fine detail is still better in DLSS, XeSS etc -the aerials' frame and similar stuff-. TAAU antialiasing is really good.
 
Last edited:
Is there a catch all term for smart upscaling techniques as a whole? TAAU, TSR, FSR, DLSS and XeSS all essentially do the same thing, smartly upscaling the image to save on performance. But all the acronyms make me confused when I'm just trying to make a point about all of them(with dynamic internal res) being the future of image quality rather than any kind of native resolution 😂

Either Temporal reconstruction (as Shifty mentions) or Temporal upscaling (as Subtlesnake mentions) are usable terms.

That's a misleading term IMHO as that's what frame interpolation would be, upscaling 30 fps content to 60 fps content. An upscaler also doesn't need a temporal element although that obviously helps, adn can combine numerous analysis elements. If you had a motion element, tracking motion vectors, would you call it a "motion upscaler"? So really I think image reconstructors, with qualifiers for attributes used (temporal, spatial, motion, object, etc.)

Of course, what people actually use will probably be illogical and fairly arbitrary. ;) Just like every user/owner of a game these days is referred to as a 'fan'. "Good news for our fans - we're fixing the buggy mess you hate and wish you hadn't spent money on."

Upscaling in graphics has typically been used when referring to adding pixels to increase the resolution. For example, the page on NV's DLSS refers to it as an image enhancement and upscaling technology.

Frame interpolation has generally been used when referring to adding additional frames.

Regards,
SB
 
Why don't developers have the game compile the shaders before first load? Can someone explain the thinking on not doing it.
Does the Q/A teams uninstall and reinstall the game everytime they go through it? If they don't that might explain why they don't see it. Developers should have the mindset that the shaders need to be compiled on first load though even if it takes longer to get into the game.
 
Why don't developers have the game compile the shaders before first load? Can someone explain the thinking on not doing it.
Does the Q/A teams uninstall and reinstall the game everytime they go through it? If they don't that might explain why they don't see it. Developers should have the mindset that the shaders need to be compiled on first load though even if it takes longer to get into the game.

Some of it is because they are inexperienced with a large project. They may see it happening but not know the exact cause. When you're dealing with a bug list that is 100's or 1000's of entries long, the stutter that they see may be shader stutter or it may be too aggressive asset loading or decompression or it could be a bug in their data streaming code or a bug in their data management or ... pick one of many different reasons.

Then when they finally have "final code" which could just mean now the game systems and assets are all locked in and all that remains is bug fixing, they are slowly working through the list out outstanding bugs and they'll have an estimate of when they believe they'll have it in a shape that is good to release to consumers. If they are being published by a Publisher and not self-publishing, there could be pressure from the Publisher to ship by a certain date. They may or may not be able to get all bugs fully resolved. IE - by the time the game ships an inexperienced developer on a publisher timeline may quite possible still not be entirely sure if the stutter in the game is due to shaders or some other bug.

Sometimes, developer's who haven't released a major project before and haven't really had to deal with the shader stutter issue may not even know where to start. Take Neon Giant with their release of the The Ascent which came out just before Shader Stutter really exploded into PC gamer's consciousness (Alex had talked about it some by then, but it hadn't yet been picked up by a lot of media sites). They knew they had a problem, but they didn't know where the problem was and even with NVidia's graphics engineers helping them it took them a while to first find where the problem was occuring and then to fix it.

That problem is exacerbated by most larger development houses (AA and AAA) shifting to console first development and good coding practices for PC games has atrophied quite a bit. This was mostly a solved problem over a decade ago. Sure shaders were simpler then but potential stuttering due to shaders was still something developers had to deal with and they mostly knew how to deal with that because PC was either the primary development platform or an equal development platform for them. This meant that programmers of those dev houses that would go on to form their own dev. houses would carry that knowledge with them. With console first development and an over-reliance (IMO) on 3rd parties to port a project to PC instead of doing it in house, a lot of good PC coding practices have atrophied. And thus when a programmer might leave a large developer to go form their own dev. house they may have no idea how to deal with the issue on PC.

Keep in mind that fixing bugs in a program is never really easy. Especially if they don't have strong code discipline and organization. You're trying to track something down in thousands, hundreds of thousands or more of lines of code. Now imagine doing that if the code isn't well documented and/or well organized?

Some of it is because they outsource to a 3rd party to do the port. If that 3rd party isn't really good (better generally = more expensive) then they'll do the bare minimum needed to get something that "works". Then they'll be fixing bugs just as above. And if it's a cheap porting house, they may not be as motivated as an inexperience developer and then you get a shitty port.

Some of it could also be exacerbated by a developer mistakenly feeling like the experience of their PC version should be as close to a console experience as possible. IE - the first time into a game should put the gamer into the game as soon as possible. And that's probably the worst thing they could possibly do. Unlike console, for many PC users, the ability to start at a menu is FAR FAR more important than being put into a game as soon as they start it up. From things as simple as needing to adjust audio to an appropriate level to something more serious like adjusting graphics setting so the game doesn't run like ass or default to lowest graphics settngs to something really serious like ... shader stutter due to not pre-compiling shaders on startup. On PC a developer (IMO) should NOT be trying replicate the console experience.

I'd be really surprised that any developer truly doesn't care and deliberately ships a product known to have a major issue if they could at all help it. I wouldn't on the other hand be surprised if a not so great 3rd party porting company didn't care. I also wouldn't be surprised if a publisher didn't care and potentially forces a developer to ship a game before they get all major bugs/issues fixed before releasing it to the public.

Regards,
SB
 
Last edited:
Why don't developers have the game compile the shaders before first load? Can someone explain the thinking on not doing it.
Does the Q/A teams uninstall and reinstall the game everytime they go through it? If they don't that might explain why they don't see it. Developers should have the mindset that the shaders need to be compiled on first load though even if it takes longer to get into the game.
nice episode! The Calisto Protocol aside, the work on Sonic, a game which I have, of the modding community is being amazing. Can't wait to try the game when the time comes.

Had a good laugh in that part of the Jesus game. Turning water into wine.
 
Status
Not open for further replies.
Back
Top