"SfR Fresh" - the SfR Freeware/Shareware Archive

Member "gle-3.1.0/README" of archive gle-3.1.0.tar.gz:


As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
    1 
    2                  GLE
    3                  ---
    4 
    5 GLE is a library package of C functions that draw
    6 extruded surfaces, including surfaces of revolution,
    7 sweeps, tubes, polycones, polycylinders and helicoids.
    8 Generically, the extruded surface is specified with a
    9 2D polyline that is extruded along a 3D path.  A local
   10 coordinate system allows for additional flexibility in 
   11 the primitives drawn.  Extrusions may be texture mapped
   12 in a variety of ways.  The GLE library generates 3D 
   13 triangle coordinates, lighting normal vectors and 
   14 texture coordinates as output. GLE uses the GL or 
   15 OpenGL(R) API's to perform the actual rendering.
   16 The demos use GLUT and require GLUT to be installed.
   17 
   18 Obtaining OpenGL
   19 ----------------
   20 OpenGL is available on most UNIX(R) workstations,
   21 as well as OS/2(R) and Windows NT.  Contact your
   22 workstation vendor for more information; the URL
   23 http://www.opengl.org/ points to a variety of 
   24 information, including a list of OpenGL vendors. 
   25 GLE also works with Mesa, a public-domain 
   26 OpenGL-like API. Mesa can be found at 
   27 http://www.mesa3d.org/
   28 
   29 Obtaining GLUT
   30 --------------
   31 The demos require that the GLUT windowing and 
   32 utility library be installed.  GLUT can be obtained
   33 at http://reality.sgi.com/mjk_asd/glut3/glut3.html
   34 
   35 Compiling
   36 ---------
   37 GLE uses the standard GNU automake/autoconf build process,
   38 and thus should be portable to essentially all computing 
   39 platforms.  At the command line simply type 'configure'
   40 to set things up for your CPU & operating system.  Then run
   41 'make' to compile. Finally, cd to the examples directory, 
   42 and run the script 'rundemo' to launch each of the demos 
   43 in order (from most basic, to advanced).  Use the left 
   44 mouse button to move, the middle mouse button to access
   45 the pop-down menu. 
   46 
   47 If 'configure' fails, its probably because some library
   48 or another is missing.  Look at the file 'config.log'
   49 to see what actually went wrong.  In particular, pay
   50 attention to the short program at the end: trying to 
   51 compile it by hand will give you a good idea on why
   52 it failed.
   53 
   54 configure flags:
   55 --enable-lenient-tess
   56 	If you have a tesselator that is happy with anything,
   57 	including degenerate points, colinear segments, etc.
   58 	then define this. Otherwise, don't specify this flag.
   59         Setting this flag provides a minor performance improvement.
   60 	
   61 	I beleive that the stock SGI tesselator is "lenient",
   62 	despite explicit disclaimers in the documentation.
   63 	(circa 1995).  
   64 	
   65         Early versions of the MesaGL tesselator are not at all 
   66         forgiving of degenerate points.  This resulted in frequent 
   67         crashes and/or hangs.  (circa 1997-2000). Recent versions
   68         (as of 2001) seem to work fine.  If you have an old version
   69         of MesaGL, do not set  <tt>--enable-lenient-tess</tt>
   70 
   71 --disable-auto-texture
   72 	Disable texture mapping code.  Disabling texture 
   73 	mapping may provide a very minor performance improvement.
   74 
   75 --enable-irisgl
   76         Compile for old IrisGL/GL-3.2 API.  This used to work, but
   77         hasn't been tested in a long time.
   78 
   79 --enable-debug
   80 	Will compile sources so printf routines will be called instead
   81         of OpenGL routines.  Warning: this will generate a *lot* of
   82         output!
   83 
   84 
   85 More information about building, as well as this package, 
   86 can be found in the directory "public_html".
   87 
   88 
   89 RedHat RPM's
   90 ------------
   91 RedHat RPM's can be built using the gle.spec file.
   92 
   93 
   94 Python, SWIG
   95 ------------
   96 Python bindings for gle can be found in the /swig directory.
   97 Be sure to read the readme.
   98 
   99 Compiling for Windows NT
  100 ------------------------
  101 To compile with Visual C++, just do the following:
  102 
  103 cd src
  104 cl -c -DWIN32  *.c
  105 lib -out:libgle.lib *.obj
  106 
  107 Alternately, there are a set of Microsoft Visual C Studio Project
  108 files in the directory ms-visual-c that should do the same thing.
  109 
  110 
  111 Running
  112 -------
  113 Some of the example programs will hang or crash when run on
  114 older versions of MesaGL/Linux.  This is due to bugs in the 
  115 MesaGL tesellator.  Newer versions should work fine.
  116 
  117 --------- the end ----------