This is Version 0.5.0 of the Tcl3D package.

Tcl3D provides an automatic wrapping of OpenGL 
and other 3D libraries for use with Tcl.

For a detailed description of Tcl3D and it's installation,
see chapter 2 of the Tcl3D manual.

For questions and suggestions, send an email to info@tcl3d.org


License issues:
===============

The Tcl3D wrapper source code is copyrighted by Paul Obermeier and distributed
under the BSD license.
The wrapped libraries may have differing licensing conditions.
See chapter 5.1 of the Tcl3D manual or the links supplied for each wrapped 
library later in this document.


How to compile:
===============

You need the GNU make program (Version >= 3.79)
and a current SWIG version (1.3.38) installed.

> gmake
> gmake install


Before compiling, edit the appropriate config_* file for your platform:
config_win32   for Windows with Visual C++ 7.1, 8.0, 9.0 or 10.0.
config_cygwin  for Windows with gcc (CygWin environment)
config_mingw   for Windows with gcc (MSys/MinGW environment)
config_Linux   for a 32-bit Linux with gcc
config_Linux64 for a 64-bit Linux with gcc
config_IRIX64  for SGI Irix 6.5 with MIPS Pro compiler
config_Darwin  for Mac OS X 10.3 or higher with gcc

Note:
   - CygWin support has been deprecated starting with version 0.4.0.
   - MinGW support only works for the C modules. The C++ modules tcl3dFTGL and tcl3dOsg 
     do not work with the supplied binaries of the external libraries.

For all Unix systems, the name after the underscore is the name derived from
the "uname" Unix command.

The following lines in the config_* files need to be edited:

WITH_DEBUG: If you don't want debug information, remove ALL characters 
            after the equal sign.

INSTDIR:    Set to your prefered installation directory.

TCLDIR:     Set to where your Tcl installation is.

TCLMINOR:   Set to your installed Tcl version (must be 4 or higher).


Enabling libraries:
===================

To enable the Cg support do the following:
    Install the Cg Toolkit (from www.developer.nvidia.com).

    Windows: 
    Copy the following library files into the tcl3dCg\lib directory: 
        cg.lib and cgGL.lib.
    Copy all the Cg header files into the tcl3dCg\Cg directory.
       
    Linux:
    Copy the following library files into the tcl3dCg/lib directory:
        libCg.so and libCgGL.so.
    Copy all the Cg header files into the tcl3dCg/Cg directory.
    The library file can be found in /usr/lib,
    the header files in /usr/include/Cg.

    Darwin:
    Install Cg.framework into /System/Library/Frameworks or /Library/Frameworks
    
    To toggle this feature, edit the macro WRAP_CG in file make.wrap in
    the main directory of the Tcl3D distribution: 
    WRAP_CG = 1    enables the feature
    # WRAP_CG = 1  disables the feature

    The Makefile of the tcl3dCg module additionally checks for the existence
    of the file Cg/cg.h to enable Cg support for Tcl3D.


To enable the SDL support do the following:
    Install the SDL library (from http://www.libsdl.org).

    Windows: 
    Copy the following library files into the tcl3dSDL\lib directory:
        SDL.lib and SDLmain.lib.
    Copy all the SDL header files into the tcl3dSDL\include directory.
       
    Linux:
    Copy the following library file into the tcl3dSDL/lib directory:
        libSDL.so.
    Copy all the SDL header files into the tcl3dSDL/include directory.

    Darwin:
    Copy the following library file into the tcl3dSDL/lib directory:
        libSDL.a

    To toggle this feature, edit the macro WRAP_SDL in file make.wrap in
    the main directory of the Tcl3D distribution: 
    WRAP_SDL = 1    enables the feature
    # WRAP_SDL = 1  disables the feature

    The Makefile of the tcl3dSDL module additionally checks for the existence
    of the file include/SDL.h to enable SDL support for Tcl3D.


To enable the FTGL support do the following:
    Install the Freetype2 library (from http://www.freetype.org).
    Install the FTGL library (from http://homepages.paradise.net.nz/henryj/code/#FTGL).

    Windows: 
    A DLL of FTGL is available from www.tcl3d.org.
    Copy the following library files into the tcl3dFTGL\lib directory:
        libftgl.lib.
    Copy all the FTGL header files into the tcl3dFTGL\include directory.
    Copy all the Freetype2 header files into the tcl3dFTGL/include directory.
       
    Linux:
    Copy the following library files into the tcl3dFTGL/lib directory:
        libftgl.a and libftgl.la.
    Copy all the FTGL header files into the tcl3dFTGL/include directory.
    Copy all the Freetype2 header files into the tcl3dFTGL/include directory.

    Darwin:
    Copy the following library files into the tcl3dFTGL/lib directory:
        libftgl.a and libfreetype.a

    To toggle this feature, edit the macro WRAP_FTGL in file make.wrap in
    the main directory of the Tcl3D distribution: 
    WRAP_FTGL = 1    enables the feature
    # WRAP_FTGL = 1  disables the feature

    The Makefile of the tcl3dFTGL module additionally checks for the existence
    of the file include/FTGL.h to enable FTGL support for Tcl3D.


To enable the GL2PS support do the following:
    The source files of the GL2PS library are included in the Tcl3D library. 

    To toggle this feature, edit the macro WRAP_GL2PS in file make.wrap in
    the main directory of the Tcl3D distribution: 
    WRAP_GL2PS = 1    enables the feature
    # WRAP_GL2PS = 1  disables the feature

    The Makefile of the tcl3dGl2ps module additionally checks for the existence
    of file gl2ps.h to enable GL2PS support for Tcl3D.


To enable the ODE support do the following:
    Install the ODE library (from http://www.ode.org).

    Windows: 
    Copy the following library files into the tcl3dOde\lib directory:
        ode.lib
    Copy all the ODE header files into the tcl3dOde\ode directory.

    All other platforms are not yet supported.

    To toggle this feature, edit the macro WRAP_ODE in file make.wrap in
    the main directory of the Tcl3D distribution: 
    WRAP_ODE = 1    enables the feature
    # WRAP_ODE = 1  disables the feature

    The Makefile of the tcl3dOde module additionally checks for the existence 
    of file ode/ode.h to enable ODE support for Tcl3D.
