Skip to content
README 2.49 KiB
Newer Older
Luiz Velho's avatar
Luiz Velho committed

S3D/Core Software
=================


This is the companion software package of the book
"Design and Implementation of 3D Graphics Systems" 
by Luiz Velho and Jonas Gomes and Mario Sousa.

The software contains an implementation of all the
algorithms described in the book.


CONTENTS
--------

The directory hierarchy structure is as follows:

./s3d
     /core      - Linux relatead source code
     /data      - Data files
     /test      - Test scripts
     /platforms - Deployment
     /build     - CMake build directory
      
./s3d/core
     /base    - Source of the Base library
     /proj    - Source of the Applications

./s3d/data
     /model   - Geometric Model
     /scn     - 3D Scene Files
     /pic     - Images

./s3d/tst
     /demo    - Scripts to Run the CPU demos
     /gldemo  - Scripts to Run the GPU demos

./s3d/platforms
     /qt            - QT Creator projects
     /linux/bin     - Executables
     /linux/lib     - Libraries
     /linux/include - Header files


INSTALLATION
------------

To install the Linux software run these commands in the "build" directory
    cmake ../core
    make
    make install

This should generate, compile and install the libraries and applications.


TESTING
-------

To play the CPU demos run the main shell in the demo directory
  cd test/demo
  sh run-all

This will execute all applications with test data.

To play the GPU demos run the main shell in the gldemo directory
  cd tst/gldemo
  sh run-new

To complie and run the QT demo
  cd platforms/qt/s3dgl
Open the project s3dgl.pro with QtCreator
  run s3dgl
  drag and drop the files in platforms/qt/scenes


COMPATIBILITY
-------------

This software was developed using GNU tools under the
Linux operating system. It has also been ported to MacOS X 
and it may compile in Windows using the Cygwin/MinGW environment.


REQUIREMENTS
------------

The software needs the following development tools
 cmake, sh, make, gcc, bison, flex.
It uses the imaging library libpng.
The OpenGL implementation requires GLEW, GLUT and GLSL 2.1,

The QT Applications require Qt 5.4 or higher.


REMARKS
-------

Please note that for QT Applications work properly under Linux
the following environment variables have to be set as indicated below.
 LANG=C
 LC_NUMERIC=C

In QtCreator, this can be set up using the selection:
 Project -> Run Settings -> Build Environments


UPDATES
-------

For updates and more information go to the book website:

  http://www.visgraf.impa.br/sg3d/

VERSION
-------

6.3


Copyright 1999 - 2016 - Luiz Velho