There is no standard agreed upon method of quoting fill rates. Actual fill rate is is dependent upon so many factors that people have resorted to simplifying the question to one number. Let me list some of the factors that impact ACTUAL fill rate
- the type of pixel/ 16 or 32 bit
- size of the triangle being rendered, the size of the texture
- the kind of filtering you do
- cache coherency
- to Z or not to Z, the list goes on an on.
So the best way to determine fill rate is to MEASURE it. Theoretical numbers are just that-- theory. In fact, with some approaches I could generate "infinite effective fill rate" which would not be bandwidth limited. Theoretical fill rates are only an indicator of system performance, the real measure is how the system performs and we tell that by plugging it it and running some games. After all, ask yourself which is more fun: playing Quake III at 60Fps or reading a spec? So on to those calculations.
The calculations are a simplistic description of ONE WAY of doing 3D. Fetch a texel, fetch a Z, write a pixel, write a Z. Fortunately, no advanced controller operates this way. Does the controller ALWAYS have to fetch a texel? Nope sometimes it has it in cache ( the bigger the cache the higher the probability the texel will be in the cache ) do you always have to read a Z? Nope, in some systems you can skirt this issue as well. Because of NDA's I can't tell you how Nvidia or 3Dfx or S3 or anybody actually gets more bandwidth out of a system, all I can say is that the simplistic calculations are utterly beside the point.
Meer over deze situatie vind je hier.