[compiz] [Mesa3d-dev] The direct/indirect rendering stuff and compiz

Brian Paul brian.paul at tungstengraphics.com
Thu Apr 12 09:05:13 PDT 2007


Hanno Böck wrote:
> Hi,
> 
> In fact, this bugged me a long time and now I'd finally like to have a 
> solution:
> https://bugs.freedesktop.org/show_bug.cgi?id=8160
> 
> The issue is:
> compiz has now some fallback code to indirect rendering if direct doesn't 
> work. But that's completely useless, because it'll fail some lines later, 
> exactly here:
>         glxExtensions = glXQueryExtensionsString (dpy, screenNum);
>         if (!strstr (glxExtensions, "GLX_EXT_texture_from_pixmap"))
> 
> The issue is, glXQueryExtensionsString won't return texture_from_pixmap on 
> AIGLX if LIBGL_ALWAYS_INDIRECT isn't set.
> 
> Now, the hacky solution would be to do something like the patch I attached to 
> the bug 8160.
> 
> The proper solution would probably to add an optional parameter to 
> glXQueryExtensionsString to force indirect rendering.  Shouldn't be that hard,
> some fiddling around with stdarg/va_list. As this probably results in a small 
> API-change, I wanted to have the opinion of the mesa-folks how to solve this 
> best.


We can't just add new parameters to existing GLX API functions like 
glXQueryExtensionsString().  It would be better to create a new 
function/GLX extension.

-Brian


More information about the compiz mailing list