Riptor
2007-01-09, 22:21:39
Vor einiger Zeit hat ja Beyond3D den Xenon in der X360 auseinandergenommen und es gab da einen sehr informativen wie auch komplizierten Artikel zur GPU:
ATI Xenos: XBOX 360 Graphics Demystified (http://www.beyond3d.com/articles/xenos/index.php?p=05)
Sie kamen da zu folgender Schlussfolgerung:
"With the eDRAM being the primary rendering target for Xenos there looks to be a potential issue with rendering FSAA at High Definition TV (HDTV) resolutions: space. With only 10MB of rendering space available, the resolutions and FSAA depths that can be natively supported by the eDRAM could be limited. If we look back to our 512MB Radeon X800 XL review we see that the calculation for the size of frame-buffer requirements with FSAA goes along the following lines:
Back-Buffer = Pixels * FSAA Depth * (Pixel Colour Depth + Z Buffer Depth)
Front-Buffer = Pixels * (Pixel Colour Depth + Z Buffer Depth)
Total = Back-Buffer + Front-Buffer
Now, in the case Xenos the front-buffer only exists in UMA memory, so only the back-buffer size is of concern for the eDRAM space.
At the moment XBOX 360 is supporting 720p (progressive scan) and 1080i (interlaced) resolutions - 720p equates to 1280x720 pixels and 1080i equates to 1920x1080 pixels, however interlacing means that only the odd horizontal lines are refreshed on one cycle and the even lives on the next, which means that the frame buffer is only ever needing to handle 1920x540 pixels per refresh.
Here are the frame-buffer sizes for these HDTV resolutions and 640x480 with a colour depth of 32-bit (which will cover both the standard integer 32-bit format and the FP10) and a 32-bit Z/stencil buffer. Naturally, the sizes will increase if a higher Z-Buffer depth or a higher bit colour depth is used:
(MB) || No FSAA || 2x FSAA || 4x FSAA
640x480: 2.3 || 4.7 || 9.4
1280x720: 7.0 || 14.0 || 28.1
1920x540: 7.9 || 15.8 || 31.6"
Hier sind jetzt einige Sachen, die ich immer noch nicht richtig verstanden habe:
1. Die Rechnung! Kann mir das jemand mal am Beispiel 640x480 vorrechnen? Verstehe das nicht bzw. komme nicht zum selben Ergebnis!
2. 1080i wird mit 1920x540 gleichgesetzt, jedenfalls in Bezug auf den Speicher im Framebuffer. Wie siehts dann aber bei 1080p aus?
Bruce Dawson, Software Design Engineer von Microsoft sagt dazu folgendes:
"1080p is a higher bandwidth connection from the frame buffer to the TV than 1080i. However the frame buffer itself is identical. 1080p will look better than 1080i--interlaced flicker is not a good thing--but it makes precisely zero difference to the game developer. Just as most Xbox 1 games let users choose 480i or 480p, because it was no extra work, 1080p versus 1080i is no extra work. It's just different settings on the display chip.
Inevitably somebody will ask about field rendering. Since interlaced formats display the even lines on one refresh pass and then the odd lines on the next refresh pass, can't games just render half of the lines each time? Probably not, and even if you could you wouldn't want to. You probably can't do field rendering because it requires that you maintain a rock solid 60 fps. If you ever miss a frame it will look horrible, as the odd lines are displayed in place of the even, or vice-versa."
Quelle (http://www.1up.com/do/userFeedbackDetail?cId=3154537&r=7558951&ct=NEWS)
Gilt das jetzt nur, wenn konstante 60 FPS erzielt werden und somit jedes zweite Frame fallen gelassen werden kann? Anders kann ich mir seinen Satz "1080p versus 1080i is no extra work" erklären...
3. Wäre die X360 also in der Lage, 1080p-Games mit Hilfe des eDRAMs zu rendern?
ATI Xenos: XBOX 360 Graphics Demystified (http://www.beyond3d.com/articles/xenos/index.php?p=05)
Sie kamen da zu folgender Schlussfolgerung:
"With the eDRAM being the primary rendering target for Xenos there looks to be a potential issue with rendering FSAA at High Definition TV (HDTV) resolutions: space. With only 10MB of rendering space available, the resolutions and FSAA depths that can be natively supported by the eDRAM could be limited. If we look back to our 512MB Radeon X800 XL review we see that the calculation for the size of frame-buffer requirements with FSAA goes along the following lines:
Back-Buffer = Pixels * FSAA Depth * (Pixel Colour Depth + Z Buffer Depth)
Front-Buffer = Pixels * (Pixel Colour Depth + Z Buffer Depth)
Total = Back-Buffer + Front-Buffer
Now, in the case Xenos the front-buffer only exists in UMA memory, so only the back-buffer size is of concern for the eDRAM space.
At the moment XBOX 360 is supporting 720p (progressive scan) and 1080i (interlaced) resolutions - 720p equates to 1280x720 pixels and 1080i equates to 1920x1080 pixels, however interlacing means that only the odd horizontal lines are refreshed on one cycle and the even lives on the next, which means that the frame buffer is only ever needing to handle 1920x540 pixels per refresh.
Here are the frame-buffer sizes for these HDTV resolutions and 640x480 with a colour depth of 32-bit (which will cover both the standard integer 32-bit format and the FP10) and a 32-bit Z/stencil buffer. Naturally, the sizes will increase if a higher Z-Buffer depth or a higher bit colour depth is used:
(MB) || No FSAA || 2x FSAA || 4x FSAA
640x480: 2.3 || 4.7 || 9.4
1280x720: 7.0 || 14.0 || 28.1
1920x540: 7.9 || 15.8 || 31.6"
Hier sind jetzt einige Sachen, die ich immer noch nicht richtig verstanden habe:
1. Die Rechnung! Kann mir das jemand mal am Beispiel 640x480 vorrechnen? Verstehe das nicht bzw. komme nicht zum selben Ergebnis!
2. 1080i wird mit 1920x540 gleichgesetzt, jedenfalls in Bezug auf den Speicher im Framebuffer. Wie siehts dann aber bei 1080p aus?
Bruce Dawson, Software Design Engineer von Microsoft sagt dazu folgendes:
"1080p is a higher bandwidth connection from the frame buffer to the TV than 1080i. However the frame buffer itself is identical. 1080p will look better than 1080i--interlaced flicker is not a good thing--but it makes precisely zero difference to the game developer. Just as most Xbox 1 games let users choose 480i or 480p, because it was no extra work, 1080p versus 1080i is no extra work. It's just different settings on the display chip.
Inevitably somebody will ask about field rendering. Since interlaced formats display the even lines on one refresh pass and then the odd lines on the next refresh pass, can't games just render half of the lines each time? Probably not, and even if you could you wouldn't want to. You probably can't do field rendering because it requires that you maintain a rock solid 60 fps. If you ever miss a frame it will look horrible, as the odd lines are displayed in place of the even, or vice-versa."
Quelle (http://www.1up.com/do/userFeedbackDetail?cId=3154537&r=7558951&ct=NEWS)
Gilt das jetzt nur, wenn konstante 60 FPS erzielt werden und somit jedes zweite Frame fallen gelassen werden kann? Anders kann ich mir seinen Satz "1080p versus 1080i is no extra work" erklären...
3. Wäre die X360 also in der Lage, 1080p-Games mit Hilfe des eDRAMs zu rendern?