[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bgsdev::open3d

Title:open3d
Notice:Kits on notes 3 and 4; Documents note 223
Moderator:WRKSYS::COULTER
Created:Wed Dec 09 1992
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:1306
Total number of notes:5260

1251.0. "Open GL from a server to a workstation" by SWAM1::POIANI_MI () Tue Feb 25 1997 20:08

    From my customer at Sandia Labs:
    
    We do a lot of finite element analysis in our group. Most of the
    computing for model building and analysis is done a large servers; we have
    limited resources at our desks.  We would like to upgrade to openGL at the
    desktops. This could really improve the response for smaller models.
    However, when building 100 million element models using openGL, the
    desktop requirements are enormous. 
    
    We would like the option of running openGL for smaller models, but
    turning it off for larger models (and using X bitmaps alone). Many apps
    query the desktop to find out if it supports openGL.  Is there any way
    to make an openGL desktop look like a dumber X server? For example, could
    I run a program to toggle the response of my desktop server so it
    responds to an application by saying it doesn't speak openGL.
    
    I understand that some applications support environment variables or
    command line flags to control this. I am still pursuing this with the
    applications that we use daily, but would like to know if the
    capability could be made available independent of the application.
    
    Garth Reese
    Sandia National Laboratories
T.RTitleUserPersonal
Name
DateLines
1251.1You can turn off the OpenGL extension support, but not programmaticallyVESPER::VESPEROpenGL Alpha GeekWed Feb 26 1997 09:1951
>    We would like the option of running openGL for smaller models, but
>    turning it off for larger models (and using X bitmaps alone). Many apps
>    query the desktop to find out if it supports openGL.  Is there any way
>    to make an openGL desktop look like a dumber X server? For example, could
>    I run a program to toggle the response of my desktop server so it
>    responds to an application by saying it doesn't speak openGL.

The response from the X11 server to the query for OpenGL support is
conditional on the loading of the OpenGL extension at server initialization
time. On Digital UNIX, this is in /usr/lib/X11/Xserver.conf, for example:

       < _dec_opengl   lib_dec_opengl.so       GLExtensionInit >

(There are other extensions that must be included for OpenGL to work,
and other extensions that can modify how OpenGL works.)

To change this, you need to (as root) edit this file and then restart
the server.

There is no programmatic interface to enable or disable this.

>    I understand that some applications support environment variables or
>    command line flags to control this. I am still pursuing this with the
>    applications that we use daily, but would like to know if the
>    capability could be made available independent of the application.

If the application can handle the 3D itself and use purely X11 commands
to render, this is probably the best. The application will generally simplify
the drawing (not use texture mapping, etc.) and use other tricks to get
good performance at a reduced quality. Generally there are controls
to select the type of rendering, but this is up to the application vendor.

If the application can only draw OpenGL and you still want to handle the
rendering solely on the client side, you might be able to use a free
software package called Mesa. You should be able to create a shareable
library, call it libGL.so, and put it in an alternate location. To run
with real OpenGL, the normal run-time loader path that includes /usr/shlib
will pick up the real libGL.so. To run with Mesa, set LD_LIBRARY_PATH
to include the Mesa libGL.so.

Note that Mesa is a free software package and comes with no support
from Digital or any other company. For more information on it, see:

	http://www.ssec.wisc.edu/~brianp/Mesa.html

I don't know how suitable this package would be for your purpose, and
I don't know how much work it would be to create a libGL.so from the
sources. I would not expect to be able to rotate complex objects in 
real-time.

Andy V