Skip to content

WIP mesa: Allow for more than one aux buffer again

Adam Jackson requested to merge ajax/mesa:aux-buffer-support into master

555f0a88 said "I don't know of any OpenGL drivers since the IRIX days that support aux color buffers." This turns out not to be the case, the NVIDIA driver supports 4. It's not a widely used feature as far as we're aware, but since these are basically just funny names for framebuffer objects they're now pretty trivial to support.

WIP status:

  • Does not in fact allocate any aux buffers yet
  • Probably doesn't handle drawable resize correctly
  • Not sure if this needs to do anything special to reject aux buffers in core contexts or GLES, though invalidate_framebuffer_storage() looks like it might handle it right already
  • Only exercised at all with llvmpipe so far
  • Need to bump __DRI_NUM_BUFFERS
  • Not sure if we need to do anything special to hide this from, like, r100

And of course there's no piglit tests, but auxbuffer.c in mesa/demos is glxgears that draws to AUX0 and then CopyPixels to BACK, so start there.

Merge request reports