Image Quality and Framebuffer Analysis for Available/release build Games *Read the first post*

Farid

Artist formely known as Vysez
Veteran
Supporter
Image Quality and Framebuffer Discussion for Available Games - Part 1

Why a new thread:

The purpose of yet another incarnation of this thread is to streamline the content that is discussed in these thread. AKA get rid of some of the noise that plagued the other versions of the thread.

Basic rules and guidelines:

I'll start right off with the TL;DR version:

TL;DR:

  • Discuss image quality of released games and demos only.
  • Don't share your opinion on blurred or shimmery surfaces.
  • "It's obvious for all to see" is not a technical argument.
  • Don't waste your time, and ours (especially), telling us nobody cares about this topic. If you don't care, just don't read and pass your way.
  • Talk should remain technical all the time. What you personally prefer is not the topic at all. Start a new thread, or try to fit that in an existing thread. Just not this one.
  • Yes, you're obvious when you stealth-troll. Stay clear from that thread with that stuff or just don't act surprised when you get your posting rights removed.

Full Version:


  • This thread is dedicated exclusively to dicussions about the resolution and image quality of released and available to all console games. There is a dedicated thread available for WIP and other preview builds and marketing screenshots.

  • The talk must be on a technical level all the time. Spare us the "I actually prefer blurred out edge" lines. Nobody calls you a liar, or disagree, it's just that it has nothing to do with technology matters. At the very least, you could point out to a paper/ongoing scientific discussion on the human eye and brain perception of computer generated graphics... But even then, it would off-topic and would deserve it own tread.

  • You surely have an opinion on the end goal of scrutinising the image quality of games, just as I'm sure you've got an opinion on global warming or the relevance of reality TV shows. It's just that nobody in this thread wants to read about it. I'd suggest you to start a blog on some web2.0 social site and start feeding intelligence agencies databases with your personal information. Or, just go to the General Discussion forum to vent your frustration, if you must.

  • To the fan persons on a mission to prove that one can really have nothing better to do than get internet angry over some video gaming related comment made by some stranger: No, your cunning plan to thinly veil your pathetic love for an expensive consumer electronic toy device over another behind tech-talk, you barely care for, is not obvlious to anyone. Add to that the fact that B3D is not a democracy, so don't except the benefit of doubt when you stealth-troll in this thread.


How-To and other useful explanations:


How to tell the resolution of a backbuffer based on the outputted image:

Someone has yet to take the time to compile all the relative information in a single comprehensive post. So bear with us and track down some of that information in the following posts:

http://forum.beyond3d.com/showpost.php?p=1070774&postcount=273
http://forum.beyond3d.com/showpost.php?p=1070972&postcount=282
http://forum.beyond3d.com/showpost.php?p=1071006&postcount=284
http://forum.beyond3d.com/showpost.php?p=1071084&postcount=292
http://forum.beyond3d.com/showpost.php?p=1065791&postcount=225
http://forum.beyond3d.com/showpost.php?p=1065280&postcount=222
http://forum.beyond3d.com/showpost.php?p=1167507&postcount=29


Frame Buffer Calculations & Memory Consumption

Back-Buffer(s) = Pixels * FSAA Depth * Rendering Colour Depth (may include multiple render targets for deferred rendering techniques)
Z-Buffer = Pixels * FSAA Depth * Z Depth (usually 32-bit depth)
Front-Buffer(s) = Pixels * Output Colour Depth (this is what you see, almost always resolved to 8-bit per component rather than 10-bit or 16-bit)
Total = Back-Buffer(s) + Z-Buffer + Front-Buffer(s)

Note: For Xenos, the back buffer and z-buffer must fit within the 10 MiB (10*1024*1024 bits, 8 bits/byte) to avoid tiling.

Frame buffer formats

RGBA8 = 8 bits for Red, 8 bits for Green, 8 bits for Blue, 8 bits for alpha = 32 bits per pixel
FP10 = 10 bits for RGB components, and 2 bits for alpha = 32 bits per pixel
FP16 = 16 bits for each component = 64 bits per pixel (no support for hardware alpha blending on Xenos)
NAO32 = LogLUV conversion, In-Depth explanation = 32 bits per pixel (no hardware alpha blending)

Example: 1120x585, 2xMSAA, FP10, 32-bit Z-buffer

back buffer + Z = 1120*585*2*(32/8 + 32/8) = 10483200 bytes = 9.9975... MiB

Aspect Ratio

Some of you might be wondering how games like Call of Duty 4 (1.71:1) , Halo 3(1.8:1) , Metal Gear Solid 4 (4:3) can have rendering resolutions that are not 16:9 aspect ratio. All you need to learn about is anamorphic widescreen. The image is squeezed into the rendered resolution but is then stretched to the proper 16:9 presentation.

An example of this squeezing can easily be seen in any Doom 3 engine games (Quake 4/Prey/Quake Wars). If you have one of them handy on your PC (latest version will do), try setting your resolution to 960x720 and in the console type r_aspectratio 1 for 16:9 or 2 for 16:10. All you'll see is the in-game view being squeezed/stretched horizontally. On the flip side, if you render the game at 1280x720 while still in 4:3 mode, the Mancubus just might be the fattest enemy you'll ever see. You can help it lose some weight by setting the game to 16:9. And of course, the isomorphic 1280x720 rendition will offer more image clarity than the anamorphic 960x720.

Multisample AA

Multiple geometry/sub-sample (reddish squares in below images) points with a particular weighting (surrounding the texture sample point, green square in below images) are used to determine the colour of the pixel being rendered. Sample positions can differ between AMD/nVidia. As RSX is based on the G70 architecture, the following sample patterns should apply. In the case of Xenos, it would not be unreasonable to assume that it uses the same patterns as ATI has used in the past (R300+).

The result for 2xMSAA is that there may be one intermediary shade in between polygon edge steps; one sample is found to be within one polygon (e.g. colour A), and the second sample is found in another polygon (e.g. colour B). If both sample points have equal weightings, the resultant pixel would be 50% colour A, 50% colour B. Obvious results are obtained when a polygon edge bisects the shortest imaginary line connecting the two geometry sample points. Hence, 2xMSAA for G70 will look slightly different to 2xMSAA for R520 (see sample positions below).

For the case of 4xMSAA, there may be more shades in between polygon edge steps due to the higher number of geometry samples, resulting in a smoother transition between steps. With equal weightings to each sub-sample, there will be three intermediary shades.

The easiest way to see MSAA level is to have a straight-edged object overlapping another object/background with a high contrast in colours between the two e.g. black object against a white background. Beware of JPG compressed screenshots where pixels near high frequency components (edges) can be distorted.

G70 sample patterns
2xMSAA
http://www.beyond3d.com/images/reviews/g70/2x.png
4xMSAA
http://www.beyond3d.com/images/reviews/g70/4x.png

R520 - sample patterns
2xMSAA
http://www.beyond3d.com/images/reviews/R520/aa_msaa_samp_2x.gif
4xMSAA
http://www.beyond3d.com/images/reviews/R520/aa_msaa_samp_4x.gif

Quincunx AA on PS3 - two geometry sample points are used just like 2xMSAA (so the same storage cost), but it also uses 3 samples belonging to neighbouring pixels (regardless of a polygon edge) to the right and below of the original texture sampled point (see sample pattern image for clarity). The result is a blurring of the entire image, but higher perceived polygon AA. Consider a texture of higher frequency components, lots of different colour patterns. The current pixel's two geometry sample points indicate the pixel is entirely within one polygon. However, the three neighbouring sub-samples are still accounted for in the final pixel, hence the overall image blur.

Quincunx sample pattern
http://www.beyond3d.com/images/reviews/GF4/gf4samplepattern.jpg

Comparison between 2xMSAA/QAA/ & blur filters
http://upsilandre.free.fr/images/Quincunx.jpg

Temporal AA on PS3 (ala Quaz)- odd and even frames are rendered with a half-pixel shift. The current frame is blended with the previous frame to achieve a similar effect as super sample AA for static scenes. In a moving scene, the blending of the odd and even frames produces a persistent blurring of the image. However, this is also advantageous for the edges of alpha-to-coverage primitives, because traditional multisampling does not work*, only super sampling.

*see transparency AA or adaptive AA settings on appropriate PC hardware.


Black Levels & Output

Xbox 360
Standard = 16-235
Intermediate
Expanded = 0-255

PS3
Limited Range = 16-235
Full Range = 0-255

Wii
Undocumented at the moment (feel free to address the issue)



Current list of game rendering resolutions and IQ



Archive of the older threads on the same topic:

Thread 1: The Neverending Upscale Discussion Thread * Summary=#457

http://forum.beyond3d.com/showthread.php?t=43330
Thread 2: Neverending Upscaling/Resolutions/AA etc Thread #2 *Rules: post: #616 *
http://forum.beyond3d.com/showthread.php?t=46242
Thread 3: Neverending Upscaling/Resolutions/AA etc Thread #3 (Rules Post #1!)
http://forum.beyond3d.com/showthread.php?t=48252

Footnotes

Thanks to all the people who contributed to the list, took captures and wrote large parts of the explanations. AlStrong, Quaz51/Upsilandre, grandmaster, dot50cal, etc.
 
Looks like Call of Duty: World at War defaults to 1080p on PS3, though it's a lot softer than 720p.

Does anyone have the ability to check the resolution at 1080p?
 
Here's Quantum of Solace:

Shot1:
360: http://img296.imageshack.us/img296/768/qos1360zw9.jpg
PS3: http://img152.imageshack.us/img152/3728/qos1ps3st8.jpg

Shot2:
360: http://img300.imageshack.us/img300/4317/qos2360bo2.jpg
PS3: http://img397.imageshack.us/img397/9266/qos2ps3cp3.jpg

Shot3:
360: http://img384.imageshack.us/img384/8740/qos3360sw6.jpg
PS3: http://img152.imageshack.us/img152/9522/qos3ps3dx8.jpg

Interesting differences in the graphics (plus 360 is v-locked, PS3 isn't). Shot3 indicates that the sub-720p resolution is identical on both systems.
 
The second and third shots appear to exhibit a sort of ambient occlusion in the 360 edition.
 
Quincunx AA also has the advantage (it's main selling point) to provide some filtering on alpha textures.
 
The second and third shots appear to exhibit a sort of ambient occlusion in the 360 edition.

Yes, it looks amost Crysisesque in that regard, especially in the second shot on Bond himself. SSAO?
 
Last edited by a moderator:
Are the extra texture details in 360 version higher resolution textures or extra layer of noise/detail textures?
 
Are the extra texture details in 360 version higher resolution textures or extra layer of noise/detail textures?

The lines in between bricks suggest a lower resolution on first glance or maybe poor reconstruction of high frequency components, particularly in the third pair of shots. But for the most part the non-brick (and perhaps non-normal mapped) textures look completely identical.

On a side note, there is a fairly clear difference in filtering quality - bilinear filtering on the PS3 and some degree of anisotropy on the 360 as you can see that one "tile" of brick in the lower part of the third shot that clears up on 360, but the next area beyond it is equally as blurry as on PS3.

 
At least some of it is resolution: on the first shot, the bricks in the far left; on the second, the wall above Bond.
 
The lines in between bricks suggest a lower resolution on first glance, particularly in the third pair of shots. But for the most part the non-brick textures look completely identical save for the use of bilinear filtering on the PS3 and some degree of anisotropy on the 360; you can see that one "tile" of brick in the lower part of the third shot that clears up on 360, but the next area beyond it is equally as blurry as on PS3.

Are you sure about the bilinear filtering statement? It doesn't look that way to me. The PS3 version does output 1080p by default, whereas the 360 version outputs 720p, so that may account for what you are talking about. I've played the game on both PS3/360 and I would say each at least is doing trilinear filtering. AA is also somewhat up in the air, as some parts look like 2xAA and others nothing.
 
Last edited by a moderator:
Are you sure about the bilinear filtering statement? It doesn't look that way to me. The PS3 version does output 1080p by default, whereas the 360 version outputs 720p, so that may account for what you are talking about. I've played the game on both PS3/360 and I would say each at least is doing trilinear filtering. No AA.

It very much looks like it is bilinear, on the bigger pic you can see the line between texture levels.
 
Also grandmaster thinks that both games render(thats all that matters to what we are talking about) at the same res.
 
btw, I've edited my original post to show the difference in filtering.

The PS3 version does output 1080p by default, whereas the 360 version outputs 720p, so that may account for what you are talking about.

That won't matter here because grandmaster captured 720p shots.

AA is also somewhat up in the air, as some parts look like 2xAA and others nothing.
Such is the nature of few sample points and particular edge angles; angles closer to 45 degrees will have varied results as according to the different sample patterns that RSX and Xenos utilize.

I would agree with the 2xAA claim - the near vertical/horizontal edges show classic results.
 
@AlStrong: I don't think it's filtering:
82588292ee8.png

Left 1/5 is almost identical. If it was about filtering, similar difference would be visible there as it is on the rest of the pic, after all the angle is the same. However difference becomes very apparent moving more to the right side of the pic. In my opinion this indicates more agressive mipmapping and not filtering differences.

But overal I think there are multiple techniques employed.
38254314pp1.png

Glow on the pipes is extra shader. "Deeper", sharper textures are either extra detail texture or some postprocessing in the shader. Differences on the rocky wall behind the pipes is lower res texture but once again I believe it's due to more agressive mipmapping.
 
Replying to COD5 question. It's most likely sub 720p as the previous COD4 game. ie 1024x600p 2xaa.

I'm interested to know LBP iq/fb.On my set it appears to below 720p with no AA.It doesn't look sharp as a 720p game.
 
Are you sure about the bilinear filtering statement? It doesn't look that way to me. The PS3 version does output 1080p by default, whereas the 360 version outputs 720p...

Eh? Both are outputting sub-720p and my PS3 had 1080p disabled when these shots were taken any way. It is the best method to ensure like-for-like shots.
 
Back
Top