<HTML> <TITLE>PBuffer Rendering</TITLE> <link rel="stylesheet" type="text/css" href="mesa.css"></head> <BODY> <H1>PBuffer Rendering</H1> <p> Basically, FBconfigs and PBuffers allow you to do off-screen rendering with OpenGL. The OSMesa interface does basically the same thing, but fbconfigs and pbuffers are supported by more vendors. PBuffer rendering may also be hardware accelerated. </p> <p> PBuffers are getting more use nowadays, though they've actually been around for a long time on IRIX systems and other workstations. </p> <p> The <a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt" target="_parent">GL_SGIX_fbconfig</a> and <a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt" target="_parent"> GL_SGIX_pbuffer</a> extensions describe the functionality. More recently, these extensions have been promoted to ARB extensions (on Windows at least). </p> <p> The Mesa/progs/xdemos/ directory has some useful code for working with pbuffers: </p> <ul> <li><b>pbinfo.c</b> - like glxinfo, it prints a list of available fbconfigs and whether each supports pbuffers. <li><b>pbutil.c</b> - a few utility functions for dealing with fbconfigs and pbuffers. <li><b>pbdemo.c</b> - a demonstration of off-screen rendering with pbuffers. </ul> <p> Mesa 4.1 and later support GL_SGIX_fbconfig and GL_SGIX_pbuffer (software rendering only). </p> </BODY> </HTML>