On Fri, 2009-01-23 at 08:51 +0100, Michel Dänzer wrote: > On Thu, 2009-01-22 at 19:52 +0000, Peter Clifton wrote: > > > > The GLXPixmap created to texture from seems to be lacking information > > about the proper structure and depth of the underlying pixmap data. > > [...] > > > Should the information regarding the structure of the pixmap be stored > > against the GLXPixmap, or perhaps even the DRI drawable information? > > AFAICT the GLXPixmap should already have the information; compiz sets > the GLX_TEXTURE_FORMAT_EXT attribute to GLX_TEXTURE_FORMAT_RGBA_EXT for > depth 32 and GLX_BIND_TO_TEXTURE_RGB_EXT otherwise. I'm not sure if this > information is accessible from the setTexBuffer hook as it stands > though.
Those attributes appears dropped on the floor by Mesa. Only the texture target is saved. (There is a structure field for that, but nowhere to stash the texture format). Its interesting that it is up to the caller to tell GLX what texture format the pixmap should be using.. especially since the X server knows the pixmap depth. I did check in compiz, and the GLX_BIND_TO_TEXTURE_RGB_EXT / GLX_BIND_TO_TEXTURE_RGBA_EXT is being set correctly for the two types of texture, but from within setTexBuffer. Unfortunately I've been unable to find the fbconfig used to make the pixmap from within setTexBuffer (which is what compiz checks to determine which of the above flags to set). I can get a fbconfig, but it appears to be different - or at least, I wasn't able to re-derive which texture format I'm supposed to be using. -- Peter Clifton Electrical Engineering Division, Engineering Department, University of Cambridge, 9, JJ Thomson Avenue, Cambridge CB3 0FA Tel: +44 (0)7729 980173 - (No signal in the lab!) ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ Mesa3d-dev mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mesa3d-dev
