Indirect OpenGL -- partially working?
Ilya Anfimov
ilan at tzirechnoy.com
Thu Jun 16 09:03:49 UTC 2016
On Wed, Jun 15, 2016 at 05:05:28PM -0700, L. A. Walsh wrote:
>
>
>
>
> Thomas L??bking wrote:
> >On Tue, May 31, 2016 at 08:33:14AM -0700, L. A. Walsh wrote:
> >>Glynn Clements wrote:
> >>>L. A. Walsh wrote:
> >>>
> >>>>I have sometimes gotten some GLX programs to work for a short while,
> >>>>but more often than not, I don't get them to work at all.
> >>>
> >>>The most likely reason for this is that the program needs a later
> >>>version of OpenGL than Cygwin's X server provides.
> >>----
> >> Hmmm....what does this mean, then?
> >>OpenGL vendor string: NVIDIA Corporation
> >>OpenGL renderer string: GeForce GTX 590/PCIe/SSE2
> >>OpenGL version string: 1.4 (4.5.0 NVIDIA 355.98)
> >
> >Indirect GL is confined to GL 1.4 (ie. fixed function path, notably no
> >glsl)
> >The driver and GPU support 4.5, but only on direct contexts.
> >
> >You should check whether indirect GL works generally (there're somet
> >pitfalls), ie. whether glxgears works.
> >If so, you best contact the authors of the failing GL clients and ask
> >whether they provide a fixed function path (and how to select it)
> ----
> Glx gears draws the gears but they don't move.
Yes, interesting set of bugs.
Drawing requests from glxgears are small, and X11 holds a lot of
them in it's receive buffers. Sometime ago I had ~16k requests on
nvidia card with nvidia driver.
As the new glxgears calculates per-frame rotation from fps, it
receives very large fps value (16k requests gets out almost in-
stantly) and sets very low per-frame rotation. On the screen,
however, there is usually 60 fps rendering speed -- as it is sync
to vblank.
This results in the very slow visible gear motion.
Also, after pulling 16k requests, glx would stack and prevent
glxgears from pulling more. This would result in glxgears not
printing it's fps results for some time.
And even suspended glxgears would draw something for minutes.
Well, XFlush() after frame drawing in glxgears would fix that
more or less fine.
More information about the xorg
mailing list