C SPECIFICATION

       GLXContext glXCreateContext( Display *dpy,
                                    XVisualInfo *vi )



PARAMETERS

       dpy  Specifies the connection to the X server.

       vi   Specifies  the  visual  that  defines  the  frame buffer resources
            available to the  rendering  context.   It  is  a  pointer  to  an
            XVisualInfo structure, not a visual ID or a pointer to a Visual.

       _param3
            Specifies  the  context  with  which to share display lists.  NULL
            indicates that no sharing is to take place.

       _param4
            Specifies whether rendering is to be done with a direct connection
            to  the graphics system if possible (True) or through the X server
            (False).


DESCRIPTION

       glXCreateContext creates a GLX rendering context and returns  its  han-
       dle.   This  context  can  be  used to render into both windows and GLX
       pixmaps.  If glXCreateContext fails to create a rendering context, NULL
       is returned.

       If  _param4  is True, then a direct rendering context is created if the
       implementation supports direct rendering, if the connection is to an  X
       server  that  is local, and if a direct rendering context is available.
       (An implementation may return  an  indirect  context  when  _param4  is
       True).   If  _param4  is  False,  then a rendering context that renders
       through the X server is always created.  Direct  rendering  provides  a
       performance advantage in some implementations.  However, direct render-
       ing contexts cannot be shared outside a single process, and they may be
       unable to render to GLX pixmaps.

       If  _param3  is not NULL, then all display-list indexes and definitions
       are shared by context _param3 and by the  newly  created  context.   An
       arbitrary  number  of  contexts  can share a single display-list space.
       However, all rendering contexts that share a single display-list  space
       must  themselves  exist  in the same address space.  Two rendering con-
       texts share an address space if  both  are  nondirect  using  the  same
       server, or if both are direct and owned by a single process.  Note that
       in the nondirect case, it is not necessary for the calling  threads  to
       share  an  address  space, only for their related rendering contexts to
       share an address space.

       If the GL version is 1.1 or greater, then all  texture  objects  except
       object 0, are shared by any contexts that share display lists.



ERRORS

       NULL is returned if execution fails on the client side.

       BadMatch  is generated if the context to be created would not share the
       address space or the screen of the context specified by _param3.

       BadValue is generated if vi is not a valid visual (for  example,  if  a
       particular GLX implementation does not support it).

       GLXBadContext  is  generated if _param3 is not a GLX context and is not
       NULL.

       BadAlloc is generated if the server does not have enough  resources  to
       allocate the new context.


SEE ALSO

       glXDestroyContext, glXGetConfig, glXIsDirect, glXMakeCurrent




                                                          GLXCREATECONTEXT(3G)

Man(1) output converted with man2html