GL and VNC? - X

This is a discussion on GL and VNC? - X ; Why is it that when I try to run a GL app into a VNC display, that I get errors like: [strombrg@foobar .vnc]$ /usr/X11R6/lib/xscreensaver/gears Xlib: extension "GLX" missing on display ":1.0". Xlib: extension "GLX" missing on display ":1.0". Xlib: extension ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: GL and VNC?

  1. GL and VNC?


    Why is it that when I try to run a GL app into a VNC display, that I get
    errors like:

    [strombrg@foobar .vnc]$ /usr/X11R6/lib/xscreensaver/gears
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    Xlib: extension "GLX" missing on display ":1.0".
    gears: display ":1.0" does not support the GLX extension.
    [strombrg@foobar .vnc]$

    ....but I used to be able to run mesa without DRI fine on XFree86?

    I'm not expecting VNC to render the 3D apps quickly, but shouldn't it at
    least try to render using software, instead of just erroring out?


  2. Re: GL and VNC?

    On Thu, 14 Oct 2004 16:14:23 -0700, Dan Stromberg staggered into the
    Black Sun and said:
    > Why is it that when I try to run a GL app into a VNC display, that I
    > get
    > strombrg@foobar .vnc$ /usr/X11R6/lib/xscreensaver/gears
    > Xlib: extension "GLX" missing on display ":1.0".


    Because whatever you're using to create this VNC display (vncserver?
    x0rfbserver? x11vnc? KDE Desktop Sharing?) doesn't support GLX, and
    gears requires GLX to run.

    > ...but I used to be able to run mesa without DRI fine on XFree86?


    Huh? Do you mean "I used to be able to run GL applications using Mesa
    on my X server's :0"? The virtual display that x11vnc and similar
    programs create is not a real X server and doesn't support the same
    extensions.

    > I'm not expecting VNC to render the 3D apps quickly, but shouldn't it
    > at least try to render using software, instead of just erroring out?


    The RFB protocol doesn't work well at all when large areas of the
    screen are moving quickly. Software rendering would make things worse,
    since the remote machine's CPU would have to render all the 3D junk,
    compress the display's root window, then send it over the network to the
    RFB client. You'd be lucky to get 10 frames/sec even with a fast CPU
    and a simple GL app like glxgears.

    --
    Matt G|There is no Darkness in Eternity/But only Light too dim for us to see
    Brainbench MVP for Linux Admin / mail: TRAP + SPAN don't belong
    http://www.brainbench.com / Hire me!
    -----------------------------/ http://crow202.dyndns.org/~mhgraham/resume

  3. Re: GL and VNC?


    First off, thanks for your reply!

    On Fri, 15 Oct 2004 00:20:09 +0000, Dances With Crows wrote:

    > On Thu, 14 Oct 2004 16:14:23 -0700, Dan Stromberg staggered into the
    > Black Sun and said:
    >> Why is it that when I try to run a GL app into a VNC display, that I
    >> get
    >> strombrg@foobar .vnc$ /usr/X11R6/lib/xscreensaver/gears
    >> Xlib: extension "GLX" missing on display ":1.0".

    >
    > Because whatever you're using to create this VNC display (vncserver?
    > x0rfbserver? x11vnc? KDE Desktop Sharing?) doesn't support GLX, and
    > gears requires GLX to run.


    That much is apparent, but I must point out that at one time gears did
    -not- require GLX to run. It used to be able to do 3D rendering without
    requiring any X server extensions. I used to tell my clients this was
    an advantage of mesa over SGI's "real" GL, because SGI's version -did-
    require GLX.

    >> ...but I used to be able to run mesa without DRI fine on

    XFree86?
    >
    > Huh? Do you mean "I used to be able to run GL applications using Mesa
    > on my X server's :0"? The virtual display that x11vnc and similar
    > programs create is not a real X server and doesn't support the same
    > extensions.


    Yes, I'm aware of that, but like I said, mesa used to not require the GLX
    extension.

    >> I'm not expecting VNC to render the 3D apps quickly, but

    shouldn't it
    >> at least try to render using software, instead of just erroring out?

    >
    > The RFB protocol doesn't work well at all when large areas of the screen
    > are moving quickly. Software rendering would make things worse, since
    > the remote machine's CPU would have to render all the 3D junk, compress
    > the display's root window, then send it over the network to the RFB
    > client. You'd be lucky to get 10 frames/sec even with a fast CPU and a
    > simple GL app like glxgears.


    Yes, but then not all GL apps require animation. There's a use for slow
    3D - EG, 3D graphs, which you draw once and stare at for minutes.


  4. Re: GL and VNC?

    On Fri, 15 Oct 2004 08:26:35 -0700, Dan Stromberg staggered into the
    Black Sun and said:
    > On Fri, 15 Oct 2004 00:20:09 +0000, Dances With Crows wrote:
    >> On Thu, 14 Oct 2004 16:14:23 -0700, Dan Stromberg staggered into the
    >> Black Sun and said:
    >>> Why is it that when I try to run a GL app into a VNC display, that I
    >>> get Xlib: extension "GLX" missing on display ":1.0".

    >> Because whatever you're using to create this VNC display (vncserver?
    >> x0rfbserver? x11vnc? KDE Desktop Sharing?) doesn't support GLX, and

    > That much is apparent, but I must point out that at one time gears did
    > -not- require GLX to run. It used to be able to do 3D rendering
    > without requiring any X server extensions. I used to tell my clients
    > this was an advantage of mesa over SGI's "real" GL, because SGI's
    > version -did- require GLX.


    I think the problem is that applications that use GL link to
    /usr/lib/libGL.so , which on my system is a symlink to the real GL
    library in /usr/lib/opengl/nvidia/ . Your libGL.so probably links to
    one of the non-Mesa libraries. Check and see.

    The Mesa libraries are in /usr/lib/opengl/xfree/ here on a Gentoo
    system. I switch among GL implementations by using "opengl-update",
    which fiddles the symlinks in /usr/lib and the include files in
    /usr/include. YDistroMV; check its manuals.

    >>> ...but I used to be able to run mesa without DRI fine on

    >> on my X server's :0"? The virtual display that x11vnc and similar
    >> programs create is not a real X server and doesn't support the same

    > Yes, I'm aware of that, but like I said, mesa used to not require the
    > GLX extension.


    Yeah, when you're using Mesa, it might not. It's entirely possible that
    some OpenGL applications will query the GLX extension and refuse to run
    if it's not there though. (Unless the Mesa libraries fake it, which is
    possible....)

    >> junk, compress the display's root window, then send it over the
    >> network to the RFB client. You'd be lucky to get 10 frames/sec even
    >> with a fast CPU and a simple GL app like glxgears.

    > Yes, but then not all GL apps require animation. There's a use for
    > slow 3D - EG, 3D graphs, which you draw once and stare at for minutes.


    Ah. I was thinking games and such here. Well, see what the symlink
    actually points to and use your distro's 3D setup thing to switch back
    to Mesa if that's what you want. There is no way to have one
    application use Mesa and other applications use real GL libraries except
    recompiling things staticly though... I think. HTH anyway,

    --
    Matt G|There is no Darkness in Eternity/But only Light too dim for us to see
    Brainbench MVP for Linux Admin / mail: TRAP + SPAN don't belong
    http://www.brainbench.com / Hire me!
    -----------------------------/ http://crow202.dyndns.org/~mhgraham/resume

+ Reply to Thread