xboxscene.org forums

Pages: 1 [2] 3 4

Author Topic: Carmack's Platform Of Choice For Console Developme  (Read 262 times)

deftonesmx17

  • Archived User
  • Hero Member
  • *
  • Posts: 960
Carmack's Platform Of Choice For Console Developme
« Reply #15 on: August 15, 2005, 08:05:00 AM »

QUOTE(m_hael @ Aug 15 2005, 09:37 AM)
1280x720x8  (32bit color, 24Bit Z, 8Bit stencil) x 2 (double buffering) = ~14MB

the hardware has technology to help us out but... it doesn't fit.

Its odd that M$ didnt think about this. I didnt even think about it until you mentioned it. Oh well, at least ATI was trying. pop.gif
Logged

twistedsymphony

  • Archived User
  • Hero Member
  • *
  • Posts: 6955
Carmack's Platform Of Choice For Console Developme
« Reply #16 on: August 15, 2005, 09:09:00 AM »

blink.gif
Logged

Carlo210

  • Archived User
  • Hero Member
  • *
  • Posts: 2005
Carmack's Platform Of Choice For Console Developme
« Reply #17 on: August 15, 2005, 09:41:00 AM »

I'm still a teensy bit concerned on getting solid framerates in 720p. I mean, when playing a pc game in 600x800, you can get 60+, but when you switch to 1280x1024, you get around 30 or so. I hope we will be fine with framerates, but it's no contest that we will get better framerates in 480p. Will some of us choose 480p if 720p end up being a little slow?
Logged

Deftech

  • Archived User
  • Hero Member
  • *
  • Posts: 4747
Carmack's Platform Of Choice For Console Developme
« Reply #18 on: August 15, 2005, 09:59:00 AM »

QUOTE(Carlo210 @ Aug 15 2005, 01:52 PM)
Will some of us choose 480p if 720p end up being a little slow?
Logged

deftonesmx17

  • Archived User
  • Hero Member
  • *
  • Posts: 960
Carmack's Platform Of Choice For Console Developme
« Reply #19 on: August 15, 2005, 10:41:00 AM »

pop.gif  pop.gif  pop.gif  pop.gif  pop.gif  pop.gif
Logged

KAGE360

  • Archived User
  • Hero Member
  • *
  • Posts: 2445
Carmack's Platform Of Choice For Console Developme
« Reply #20 on: August 15, 2005, 10:46:00 AM »

QUOTE
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

As we can see, with these bit depths, all the resolutions will fit into the 10MB of eDRAM without FSAA and at 640x480 a 4x FSAA depth will stay within the eDRAM memory size, with these colour and Z depths. However, at HDTV resolutions nothing can fit into the 10MB of eDRAM with any mode FSAA enabled. Xenos was specifically designed to perform very well in these cases by dividing the screen into multiple portions that fit within the eDRAM render buffer space. This is similar to prior tile-based renderers, but with a much larger base tile and with additional functionality to optimize the tiling approach.

Tiling mechanisms can operate in a number of ways. With immediate mode rendering (i.e. the pixels being rendered are for the same frame as the geometry being sent) it is never known what pixels the geometry is going to be mapped to when the commands begin processing. This is not known until all the vertex processing is complete, setup has occurred and each primitive is scan converted. So if you wanted to tile the screen with an immediate mode rendering system, the geometry may need to be processed, setup and then discarded if it is found not to relate to pixels that are to be rendered in the current buffer space. The net result here is that geometry needs to be recalculated multiple times for each of the buffers. Another method for tiling would be to use Tile Based Deferred Rendering which processes the geometry and "bins" it into graphics RAM, saving which render "tile" the geometry affects as it does so - these mechanisms have traditionally operated by deferring the actual rendering by a frame in order to parallelise the geometry processing / binning and the rendering (you may wish to take a refresher on PowerVR's tile based deferred rendering process in our article here).

ATI and MS decided to take advantage of the Z only rendering pass which is the expected performance path independent of tiling. They found a way to use this Z only pass to assist with tiling the screen to optimise the eDRAM utilisation. During the Z only rendering pass the max extents within the screen space of each object is calculated and saved in order to alleviate the necessity for calculation of the geometry multiple times. Each command is tagged with a header of which screen tile(s) it will affect. After the Z only rendering pass the Hierarchical Z Buffer is fully populated for the entire screen which results in the render order not being an issue. When rendering a particular tile the command fetching processor looks at the header that was applied in the Z only rendering pass to see whether its resultant data will fall into the tile it is currently processing and if so it will queue it, if not it will discard it until the next tile is ready to render. This process is repeated for each tile that requires rendering. Once the first tile has been fully rendered the tile can be resolved (FSAA down-sample) and that tile of the back-buffer data can be written to system RAM; the next tile can begin rendering whilst the first is still being resolved. In essence this process has similarities with tile based deferred rendering, except that it is not deferring for a frame and that the "tile" it is operating on is order of magnitudes larger than most other tilers have utilised before.

There is going to be an increase in cost here as the resultant data of some objects in the command queue may intersect multiple tiles, in which case the geometry will be processed for each tile (note that once it is transformed and setup the pixels that fall outside of the current rendering tile can be clipped and no further processing is required), however with the very large size of the tiles this will, for the most part, reduce the number of commands that span multiple tiles and need to be processed more than once. Bear in mind that going from one FSAA depth to the next one up in the same resolution shouldn't affect Xenos too much in terms of sample processing as the ROP's and bandwidth are designed to operate with 4x FSAA all the time, so there is no extra cost in terms of sub sample read / write / blends, although there is a small cost in the shaders where extra colour samples will need to be calculated for pixels that cover geometry edges. So in terms of supporting FSAA the developers really only need to care about whether they wish to utilise this tiling solution or not when deciding what depth of FSAA to use (with consideration to the depth of the buffers they require as well). ATI have been quoted as suggesting that 720p resolutions with 4x FSAA, which would require three tiles, has about 95% of the performance of 2x FSAA.

Taking the previous sampling requirements, the memory quantities required resolved to the following number of tiles being required:

(# of Tiles)      No FSAA          2x FSAA       4x FSAA
640x480              1                     1                 1
1280x720            1                     2                  3
1920x540            1                      2                 4

Render to texture operations that have space requirements beyond 10MB can also operate in the tiled mode, however given that Xenos is going into a closed box environment its likely that developers of the system will consider what best fits the design of the console when they are developing their titles.


link to where i found this info
http://www.beyond3d..../index.php?p=05

from reading this it would seem that if the right methods were used then the 10megs would be enough.  again any corrections would be great just figured i would throw this piece of info out in the air.  laugh.gif
Logged

Deftech

  • Archived User
  • Hero Member
  • *
  • Posts: 4747
Carmack's Platform Of Choice For Console Developme
« Reply #21 on: August 15, 2005, 12:41:00 PM »

and to build upon what kage posted, I thought MSAA was more efficient than FSAA, and required less video memory?

even if the AA mode exceeds the 10mb buffer, cant the devs use some of the 512 as Vram and alleviate the problem? It would hurt performance more but isnt that possible?
Logged

twistedsymphony

  • Archived User
  • Hero Member
  • *
  • Posts: 6955
Carmack's Platform Of Choice For Console Developme
« Reply #22 on: August 15, 2005, 01:07:00 PM »

QUOTE(Carlo210 @ Aug 15 2005, 11:52 AM)
I'm still a teensy bit concerned on getting solid framerates in 720p. I mean, when playing a pc game in 600x800, you can get 60+, but when you switch to 1280x1024, you get around 30 or so. I hope we will be fine with framerates, but it's no contest that we will get better framerates in 480p. Will some of us choose 480p if 720p end up being a little slow?
Logged

Deftech

  • Archived User
  • Hero Member
  • *
  • Posts: 4747
Carmack's Platform Of Choice For Console Developme
« Reply #23 on: August 15, 2005, 01:50:00 PM »

I thought the base AA was just that, just simple AA. I looked up MSAA and found an article about it being better than AA. a lot of us just say FSAA because its the generic term. I know FS is for full scene.

so theres no basic AA? just MSAA and SSAA?

hmmm, I wonder why people never mention MSAA when they talk graphics, well most dont anyways.

when I was a pc whore moons ago, it was always just AA/FSAA and the almighty Quincunx or whatever that used to be called.
Logged

shin0bi

  • Archived User
  • Newbie
  • *
  • Posts: 17
Carmack's Platform Of Choice For Console Developme
« Reply #24 on: August 15, 2005, 01:51:00 PM »

cool article... and suprisingly not 'websensed' here at work. yay. now if only xbox-scene wasn't websensed.
Logged

Deftech

  • Archived User
  • Hero Member
  • *
  • Posts: 4747
Carmack's Platform Of Choice For Console Developme
« Reply #25 on: August 15, 2005, 01:54:00 PM »

I thought the base AA was just that, just simple AA. I looked up MSAA and found an article about it being better than AA. a lot of us just say FSAA because its the generic term. I know FS is for full scene.

so theres no basic AA? just MSAA and SSAA?

when I was a pc whore moons ago, it was always just AA/FSAA and the almighty Quincunx or whatever that used to be called.

http://www.pantherpr.....Anti Aliasing

ok, 2 types it is. MSAA and SSAA.

what about my question?

cant more main sys ram be used as Vram to boost the AA performance?
Logged

twistedsymphony

  • Archived User
  • Hero Member
  • *
  • Posts: 6955
Carmack's Platform Of Choice For Console Developme
« Reply #26 on: August 15, 2005, 02:16:00 PM »

QUOTE(Deftech @ Aug 15 2005, 04:05 PM)
I thought the base AA was just that, just simple AA. I looked up MSAA and found an article about it being better than AA. a lot of us just say FSAA because its the generic term. I know FS is for full scene.
Logged

KAGE360

  • Archived User
  • Hero Member
  • *
  • Posts: 2445
Carmack's Platform Of Choice For Console Developme
« Reply #27 on: August 15, 2005, 02:21:00 PM »

if there were only two kinds of AA then what did the N64 and Dreamcast do?  i know that the dreamcast would be able to do FSAA and it showed as very few of the games i own have any jaggies at all.  i know this may be a bit off of topic but im just curious as these two machines dont seem powerful enough to run MSAA or SSAA
Logged

miggidy

  • Archived User
  • Hero Member
  • *
  • Posts: 700
Carmack's Platform Of Choice For Console Developme
« Reply #28 on: August 15, 2005, 04:53:00 PM »

Great read.

Carmack picking the Xbox 360 holds major weight.
I wonder what Sony groupies are thinking now....

Their silence speaks for itself.
Logged

Deftech

  • Archived User
  • Hero Member
  • *
  • Posts: 4747
Carmack's Platform Of Choice For Console Developme
« Reply #29 on: August 15, 2005, 05:23:00 PM »

QUOTE(miggidy @ Aug 15 2005, 09:04 PM)
Great read.
Logged
Pages: 1 [2] 3 4