Re: Does the F-buffer increase the # of instructions per pas
Luminescent said:
In theory, would the R350's speculated F-buffer allow for an unlimited amount of pixel shader instructions per pass (no multipassing)? I am assuming the buffer is a sort of memory pool outside the chip which reverts to read/write registers on chip. If true, it should allow an arbitrarily long pixel shader to continue loading/offloading pixel instructions to/from the buffer without multipassing? What do you guys think (correct my perception of F-buffer, if necessary)?
I'll take a crack at it, though I'm no wiz.
Yes an F-buffer is a buffer which contains temporary data outside the frame buffer.
The actual buffer could be on-chip cache, in VRAM or normal system DRAM, preferebly two of those (ie on-chip and VRAM for an example, could even be all three).
As for your explanation of what it's for, I'd say that's pretty much it.
Instead of reprocessing geometry and other uneccesary information each pass it only fetches the needed fragment data from the F-buffer.
It's still "multi passing", it's just storing and fetching temporary results much more efficiently.
In short: it only multi passes the pixels that absolutely need it. So to answer the topic question I'd say that it increases the amount of instuctions per
traditional pass to virtually unlimited numbers.
There's many different ways to implement an F-buffer and there's also variantions to what kind of data you want it to store. (perhaps just RGBA values or perhaps depth values for those fragments too etc.)
There's also a few variations of where you want to input the buffer data into the pixel pipeline.
So I guess it's pretty hard to give any straight answers about what it will do for this or that architecture unless you have pretty specific detailed information.
Sorry if this sounded dumbed down or anything, not my intention to give any lectures.
I'm mostly in read only mode when it comes to the more technical bits here at B3D for a reason ya know. (ie feel free to correct all my misunderstandings hehe)