[n00b] What's a überbuffer?

I keep hearing about überbuffers, superbuffers, hyperbuffers and pbuffers? Could anyone just give me a quick brief on what it is? Not even Google wouldn’t tell me.

Überbuffers and Superbuffers are basically two versions of the same thing, unified memory handling of both pixel and vertex bugffers in OpenGL. The ARB is working on an extension for this. Since modern graphics cards can do computations per fragment with floating point precision you can then render to a vertex array for example. This makes it possible to have hardware accelerated NURBS and subdivision surfaces among aother things.

Pbuffers stands for pixel buffers and is a way to get off screen hardware supported pixel buffers in OpenGL. Check out the pbuffer extension for your os of choice at the extension registry.

I noticed that ATI’s latest Linux drivers have entry points for a GL_ATI_uber_buffers extension. glAllocMem2DATI seemed to work but I couldn’t do much more because I don’t know what the right enumerant values are. Does anyone know if there’s a draft spec out there somewhere?

Since modern graphics cards can do computations per fragment with floating point precision you can then render to a vertex array for example.

I don’t quite understand - wouldn’t this be a hack-beyond-belief? (Converting pixels to vertices)
Or does the driver take care of it?

Thanks for enlighting me on pbuffers, by the way!

floats are floats - it doesn’t matter if they represent fragment colors or vertecies

I wouldn’t call this a hack at all but rather the first steps of an inevitable unification of GPU data structures. I believe XBox developers can already “cast” pixels to verts (albeit not at float precision) and there are papers out there which are showing applications. An example is the Smooth Geometry Images paper.

-Jason