Cause 360 uses 10 MB of EDRAM for it's framebuffer. PS3 has 256 MB of dedicated video RAM.
And tiling (when the framebuffer is larger than the EDRAM, it must be done in parts, and copied in/out) is already a bottleneck, triple buffering exacerbates the problem
Really, triple buffering shouldn't add any latency at all as long as you can complete rendering of each buffer within the timespan of one frame, if done correctly... You could run essentially double-buffered most of the time, and only fall back on the third buffer those instances when you need to drop a couple frames due to smoke and explosions or whatever.You are free to queue up a dozen frames if you really wanted to and are happy to add that much latency
Really, triple buffering shouldn't add any latency at all as long as you can complete rendering of each buffer within the timespan of one frame, if done correctly... You could run essentially double-buffered most of the time, and only fall back on the third buffer those instances when you need to drop a couple frames due to smoke and explosions or whatever.
Not sure if anyone actually does this however. Enable triplebuffer in any Source engine game (like TF2 for example) and you get VERY noticeable mouse lag at all times for example, it's really bizarre. Dunno if it's a driver bug, but the whole screen visibly lags all input by several tenths of a second. Seems Valve really IS dozen-buffering their screen.
No it doesn't. Triple buffering just requires an extra backbuffer in RAM to swap out.
No. You said 360 has 10MB eDRAM where PS3 has 256 MBs VRAM, and tiling exacerbates the problem. 360 has 512 MBs available for storing screen buffers, and tiling has no impact on that whatsoever (actually it frees up working space). Multiple buffering is just a FIFO queue of images being passed to the output hardware, and the cost is only RAM space to store the buffers. There is no additional cost incurred by tiling, deferred rendering, forward rendering, raytracing, unfied shaders, discrete shaders, etc!Isnt that what I said?
Isnt that what I said?
No. You said 360 has 10MB eDRAM where PS3 has 256 MBs VRAM, and tiling exacerbates the problem. 360 has 512 MBs available for storing screen buffers, and tiling has no impact on that whatsoever (actually it frees up working space). Multiple buffering is just a FIFO queue of images being passed to the output hardware, and the cost is only RAM space to store the buffers. There is no additional cost incurred by tiling, deferred rendering, forward rendering, raytracing, unfied shaders, discrete shaders, etc!
I didnt say it made it impossible, I said it made it harder.
You can enjoy triple buffering with no extra input lag in most games. Just cap the FPS at slightly below your refresh rate. In Source games this can be done through the console. Other engines can require more...er... creative solutions.
How does it make it harder?
There's already a bottleneck involved with tiling (copying framebuffers to/from the EDRAM)
Triple buffering multiplies that problem.
So tiling has no effect on anything else performance wise?
eDRAM does lots of lovely things, but it's all immaterial to triple buffering! Poly-buffering is nothing more complex than having several frames in RAM ready to be sent to the screen. These frames are produced one at a time exactly the same as double buffering. How you produce those frames is immaterial, and storing images in RAM ready to display doesn't affect your rendering except regards RAM availibility.Tiling does incur geometry overhead right (in exchange for smarter/more efficient memory usage) ? eDRAM helps to save tremendous amount of bandwidth.