ATI Opengl regression (DRI?)

Aric Cyr aric.cyr at gmail.com
Thu Dec 22 04:34:33 CST 2005


On 12/22/05, Raphael <fenix at club-internet.fr> wrote:
> On Friday 16 December 2005 02:26, Aric Cyr wrote:
> > Raphael <fenix <at> club-internet.fr> writes:
> > > On Thursday 15 December 2005 19:55, Jesse Allen wrote:
> > >
> > You really don't need to use glXQueryServerString() and
> > glXQueryClientString(). It would be better, easier (not strcmp) and more
> > correct to just use glXQueryVersion().  glXQueryVersion will automatically
> > report the version common to both the client and server (so in this case
> > 1.2).
>
> No, we cannot
> - glXGetFBConfigs is implemented by glx client (normally when glx client
> version > 1.2 but in many 1.2 implementations its provided by Xorg).
> - glXQueryDrawable is only implemented by glx server (when glx server version
> > 1.2)
> - for others calls we check if client version > 1.2 else we use SGIX extension

Sorry, I think I was asleep when I posted that.  What I meant to say
is that we don't
need any of the glXQueryServerString or glXQueryClientString calls, since we can
and should just use glXQueryExtensionsString.  In fact, this is what
the code does,
but it also passes around the server and client strings to each of the
query_functions,
even though none of them use those parameters.  I guess you put those
in for future
use, but I think they will never get used and just clutter things up.

> > > i thought that DRI implemented GLX 1.3 specs but seems they use a too
> > > older x code :(
> > > http://cvs.sourceforge.net/viewcvs.py/dri/xc/xc/programs/Xserver/GL/glx/
> >
> > Too old perhaps, but that what DRI (and hence ATI) are using.  Both support
> > most of the 1.3 features so there really isn't much of an issue.  The
> > problem is that we cannot assume 1.3 regardless of how old 1.2 is.  The
> > reason for the glx version is so that we can do the right thing in any
> > case.
>
> Not really, many of GLX features are supported by glx clients.
> And only old clients (ie X versions) reports 1.2 caps (and generaly they
> support 1.3 extensions)
> I have only problems with "1.2 glx servers" (who don't support drawable
> queries), who is the DRI / ATI configuration :(

By drawable queries do you glXDrawableAttribARB?  There is zero documentation
for that function, and the entire GLX_ARB_render_texture extension. 
It seems like
the ARB dropped the whole idea.  Last mention of it was in 2002, from what I
could find.  I don't think we can rely on this extension to implement
wglSetPbuffersAttribARB().  Maybe framebuffer objects would be a
better solution,
which ATI and nVidia both support now.

> > Also seems like we should be relying on glXGetProcAddress() but need to be
> > using glXGetProcAddressARB() since nVidia apparently doesn't export the
> > former.
>
> ??? where you see glXGetProcAddress use ?

Ya I checked the code after I sent this.  I just happened to be
reading the thread
that I mentioned and thought it would be good advice to throw into the mail.

Regards,
  Aric

--
Aric Cyr <Aric.Cyr at gmail dot com>    (http://acyr.net)



More information about the wine-devel mailing list