I have few queries regarding various buffers inside a graphics card.
I have a Gainward GeForce 4 card. I tried to find out the support for auxiliary buffers by using glGetInterv() with GL_AUX_BUFFERS as arguement and it returns 0. I was rather surprised by this because it is a state-of-art graphics card and auxiliary buffers seem to be an inherent part of any graphics card. Can any one tell me if I am doing any thing the wrong way?
My program requires transferring between accumulator buffer and color buffers repetitively for around 10000 times and this was taking around 100 seconds. So is this transfer time usual? Is there any way to expedite this?
I would really appreciate any help in helping me understand the above queries.
thanks a lot,
The number of aux buffers depends on the pixel format / visual used. How you request that is windowing system dependent (i.e., you either use WGL pixel formats, GLX fbconfigs, or GLX visuals). If you don’t create a context with a configuration that has aux buffers, you won’t get any.
That said, most “modern” OpenGL implementations don’t support aux buffers. Pretty much everything that can be done with aux buffers can be done just as well or better with pbuffers. There are exceptions, but that’s the general thinking these days.
The accumulation buffer issue is different. Most cards don’t hardware accelerate accumulation buffer operations. The way it usually works is to copy the framebuffer to system memory and perform the accumulation operations happen on the CPU. You can try to verify this by changing the size of your window. If the accumulation is being done on the CPU, the performance should scale linearly with the inverse of the window size. Cutting the pixel count in half should double the performance.
Most of the things that used to be done with accumulation buffers (antialiasing, soft shadows, etc.) are better done other ways. Just like with aux buffers, there are exceptions.
IRC has the R3XX (Radeon >= 9500) hw support for the accum buffer
Originally posted by nagenderreddy:
1) I have a Gainward GeForce 4 card.
is a state-of-art graphics card and
All be it a generation (or two?) out of date and a consumer level card. (It’s not an MX is it?)
Originally posted by Zengar:
[b] GeForceFX too.
cool, just confirmed that quickly, didn’t know that before, something new to play with