M & T Publishing
411 Borel Ave.
San Mateo, CA 94402
ISBN 1-55851-220-9

================================================================
                    R  E  A  D     M   E
                            for 
 "Programming In Three Dimensions : Ray Tracing And Animation"
     by Christopher D. Watkins  for  M&T Publishing, Inc.
================================================================


ABOUT THIS DISKETTE

This diskette contains a number of files, listed below:

  README            52 03-10-92  10:17a  <-- program and data files
  INSTALL  BAT    2233 03-24-92   8:29p  <-- batch file for installation
  PKUNZIP  EXE   23528 03-15-90   1:10a  <-- utility to decompress files
  BOOKMISC ZIP  130980 03-10-92   8:28a  <-- program and data files
  SCNSCRPT ZIP    5780 03-10-92   8:31a  <-- program and data files
  SCNFILES ZIP    3357 03-10-92   8:31a  <-- program and data files
  3DMODEL  ZIP  104113 03-10-92   9:38a  <-- program and data files
  RTSCRPT  ZIP   79760 03-10-92   8:59a  <-- program and data files
  RTFILES  ZIP   71715 03-10-92   9:27a  <-- program and data files
  RAYTRACE ZIP  127387 03-10-92   9:40a  <-- program and data files
  ANIMATE  ZIP   21856 03-10-92   9:41a  <-- program and data files
  ANIFILES ZIP  538947 03-10-92  10:22a  <-- program and data files

Each file is a compressed archive file that contains the source code
and data files for each of the various parts of the book "Programming
in Three Dimensions: Ray Tracing and Animation", by Christopher
Watkins (M&T Publishing, 1992).  


INSTALLATION

The INSTALL.BAT batch file will transfer programs and data files
from the diskette drive to your hard disk. The total disk space
requirements are about 6 megabytes.  If you do not have this space on
your hard drive, you can conduct the installation process a
a step at a time, by typing in the DOS commands yourself (explained
further below).

As written, the batch file (and the instructions here) make certain
assumptions about the names of your floppy and hard drives.  Your
floppy drive is assumed to be 'A:', your hard drive 'C:'.  If these
do NOT correspond to the actual names on your system, you must modify
the batch program to use names that correspond to your system
configuration (for example, B: or D:).

Before you use this diskette, it is a good idea to make a backup copy
of it using the DISKCOPY utility in your DOS directory.  As always,
save the original diskette in a safe place in case your copies become
lost or damaged. 

To run the installation program, type

                 A:INSTALL

at the prompt.



MANUAL INSTALLATION

To install the files one section at a time, here are the instructions.
These instructions assume your hard drive is C: and your floppy drive is
A: (if this is not the case, you should make the appropriate changes).

1. First, log onto the root directory of your hard drive by typing 
               C:
               CD \

2. Then make a directory on that drive, by typing 
               MD ANIMATE

3. Then decompress the files from the floppy drive (for example,
   the two sets of animation files), by typing

               A:PKUNZIP A:ANIMATE C:\ANIMATE
               A:PKUNZIP A:ANIFILES C:\ANIMATE



A GENERAL NOTE ABOUT ROBUSTNESS

The source code files in this diskette are for illustration purposes
only.  As such, there is very little "bulletproofing" of the kind
found in commercial programs.  For example, many programs do not
check if a particular data file is present before trying to open it.
As a consequence you will get a runtime error if you mistype a
filename.  

Also, in the case of abnormal program exit such as this, the VGA
display state may be left in a different mode from the one at time of
program start.  You may need to reboot the machine to restore the
original VGA mode (or you can use the MODE BW80 command in DOS to
restore 80-column mode).  

If you encounter runtime errors, you can try to determine the cause
by using powerful Turbo Debugger that is bundled with some Borland
language products (and also available separately).


COMPILING PROGRAMS

Because of limited storage space, only the major programs in
the book are present as executable files on this diskette.
Rather, it is assumed you will compile the source code to
create your own EXE files, using the Borland C++ (or Turbo C)
language products from Borland International, Inc (1800 Green
Hills Road, Scotts Valley, CA 95067-0001 Tel: 408-438-8400).

The executables include in the diskette are:
        3DMODEL.EXE 
        DISP.EXE 
        PROCESS.EXE 
        RAYTRACE.EXE 
        ANIMATE.EXE 

These are the major programs discussed in the book. Also on the
diskette are many example data files that you can use to run the
programs with. Consult the discussion in the book for how these
programs work and what particular data files they require.

To produce the other programs mentioned in the book, you will
have to compile the source code.  The source code has been
tested with Borland C++ Version 3.0.  If you do not have the
Borland product, you will have to make some changes in the
source code and in the way you compile.  

All the source code files in the diskette come with .DSK and .PRJ
files for the Borland IDE (Interactive Development Environment).
These control files are both vendor-specific and version-specific.
The .PRJ files assume that your Borland compiler is installed
in the C:\BORLANDC directory.  If this is not the case, you will
have to change the settings using the Option menu, with the
Directory command.

Alternatively, you can compile the programs using the DOS
command-line interface. Consult your Borland manual for details.
Remember that the files have to be compiled using the Large model.


ADDITIONAL INSTRUCTIONS

   (1) Use the ScnScrpt directory for the creation of your .SCN
       files, then copy these .SCN files to the 3DModel directory
       for modeling.  When the .ANI file is created by the 3DModel
       program, copy the .ANI file to the Animate directory and
       run the Animate program to display it.

   (2) Use the RtScrpt directory for the creation of your .RT
       files, then copy these .RT files to the Raytrace directory
       for ray tracing.  When the .ANI file is created by the ray
       tracing program, copy the .ANI file to the Animate directory
       and run the Animate program to display it.


================================================================

APPENDIX: LIST OF FILES


After the standard installation process has completed you should
have six subdirectories off the \WATKINS directory on your 
hard drive, as follows.

    1.   C:WATKINS\BOOKMISC
    2.   C:WATKINS\SCNSCRPT
    3.   C:WATKINS\3DMODEL
    4.   C:WATKINS\RTSCRPT
    5.   C:WATKINS\RAYTRACE
    6.   C:WATKINS\ANIMATE

Listed below are the contents of each of the directories.
    
1. Directory of  C:WATKINS\BOOKMISC
    
    DEFS     H         590 08-16-91   1:30a
    GLOBALS  H         176 12-01-91  12:19a
    GRAPHB   C       14445 12-01-91  12:20a
    GRAPHB   H        1705 12-01-91  12:20a
    MATHB    C       10772 11-04-91   8:34p
    MATHB    H        2810 11-04-91   6:16p
    3DAVR    C        6568 12-11-91   1:02p
    3DAVR    DSK     12661 03-10-92   8:10a
    3DAVR    PRJ      5107 03-10-92   8:10a
    3DIFS    C        2506 12-11-91   1:07p
    3DIFS    DSK     12263 03-10-92   8:10a
    3DIFS    PRJ      5111 03-10-92   8:10a
    CELL1D   C        3384 11-08-91   6:49p
    CELL1D   DSK     17402 03-10-92   8:11a
    CELL1D   PRJ      5150 03-10-92   8:11a
    CELL2D   C        4507 11-08-91   7:31p
    CELL2D   DSK     17532 03-10-92   8:12a
    CELL2D   PRJ      5148 03-10-92   8:12a
    CLOUDS   C        3702 12-11-91   8:30p
    CLOUDS   DSK     17681 03-10-92   8:12a
    CLOUDS   PRJ      5136 03-10-92   8:12a
    LIFECA   C        5955 12-11-91   5:44p
    LIFECA   DSK     17695 03-10-92   8:15a
    LIFECA   PRJ      5148 03-10-92   8:13a
    LIFERULE C        2549 11-08-91   8:09p
    LIFERULE DSK     17548 03-10-92   8:14a
    LIFERULE PRJ      4780 03-10-92   8:13a
    LIFEWRLD C        2788 12-11-91   5:44p
    LIFEWRLD DSK     17842 03-10-92   8:14a
    LIFEWRLD PRJ      4772 03-10-92   8:14a
    ORB3D-3P BAK      5434 08-25-91  11:21p
    ORB3D-3P C        5456 03-10-92   8:16a
    ORB3D-3P DSK     12147 03-10-92   8:17a
    ORB3D-3P PRJ      5099 03-10-92   8:17a
    PLANT    C        2207 11-08-91   8:37p
    PLANT    DSK     17762 03-10-92   8:18a
    PLANT    PRJ      5149 03-10-92   8:17a
    RULE1D   C        1896 12-11-91   8:25p
    RULE1D   DSK     16412 03-10-92   8:18a
    RULE1D   PRJ      4986 03-10-92   8:18a
    RULE2D   C        2497 11-08-91   7:00p
    RULE2D   DSK     17437 03-10-92   8:19a
    RULE2D   PRJ      4778 03-10-92   8:19a
    SIER1D   C        2231 11-08-91   6:30p
    SIER1D   DSK     17087 03-10-92   8:19a
    SIER1D   PRJ      4842 03-10-92   8:19a
    SIER2D   C        1684 11-08-91   7:17p
    SIER2D   DSK     17439 03-10-92   8:19a
    SIER2D   PRJ      4778 03-10-92   8:19a
    WORLD1D  C        1651 11-08-91   6:38p
    WORLD1D  DSK     17272 03-10-92   8:20a
    WORLD1D  PRJ      4781 03-10-92   8:20a
    WORLD2D  C        1859 12-11-91   6:07p
    WORLD2D  DSK     17634 03-10-92   8:20a
    WORLD2D  PRJ      4781 03-10-92   8:20a
           55 File(s)
    
    
2. Directory of  C:WATKINS\SCNSCRPT
    
    DEFS     H         590 08-16-91   1:30a
    SCNSCR   C       24960 03-10-92   8:30a
            2 File(s) 
    
    
3. Directory of  C:WATKINS\3DMODEL
    
    SOLOFREV SCN     40068 09-24-91   8:38a
    SPHRPLAN SCN     13104 09-23-91   3:07p
    SPHRWALL SCN     29033 12-04-91   3:36p
    SPINTOR  SCN     23777 09-23-91   8:54p
    DEFS     H         590 08-16-91   1:30a
    GLOBALS  H         176 12-01-91  12:19a
    GRAPHB   C       14445 12-01-91  12:20a
    GRAPHB   H        1705 12-01-91  12:20a
    MATHB    C       10772 11-04-91   8:34p
    MATHB    H        2810 11-04-91   6:16p
    3DMODEL  C       31966 12-04-91   3:35p
    3DMODEL  DSK      2876 03-10-92   9:38a
    3DMODEL  PRJ      5200 03-10-92   9:38a
    CONEPYRM C        3073 11-23-91   6:50p
    CONEPYRM DSK     17881 03-10-92   8:36a
    CONEPYRM PRJ      5195 03-10-92   8:35a
    CUBE     DAT       102 07-22-91  10:55p
    CYLINDER C        2836 11-27-91   2:05a
    CYLINDER DSK     17881 03-10-92   8:36a
    CYLINDER PRJ      5193 03-10-92   8:36a
    GRID     C        2638 11-27-91   2:28a
    GRID     DSK     15962 03-10-92   8:36a
    GRID     PRJ      5191 03-10-92   8:36a
    MAKEOBJS C        2107 11-23-91   5:52p
    MAKEOBJS DSK     17745 03-10-92   8:37a
    MAKEOBJS PRJ      5195 03-10-92   8:37a
    MODELSUP H        3351 09-06-91   5:22a
    PLANE    DAT        38 07-22-91  10:49p
    PROCESS  H        5107 09-06-91   5:55a
    SHPMK    H        2899 09-06-91   6:50a
    SOLOFREV C        4483 09-24-91   7:32p
    SOLOFREV DSK     15958 03-10-92   8:38a
    SOLOFREV PRJ      5195 03-10-92   8:38a
    SPHERE   C        2405 09-05-91  11:51a
    SPHERE   DSK     14606 03-10-92   8:39a
    SPHERE   PRJ      5193 03-10-92   8:39a
    TOROID   C        2935 11-04-91   8:49p
    TOROID   DSK     17582 03-10-92   8:39a
    TOROID   PRJ      5193 03-10-92   8:39a
    3DMODEL  EXE     51244 03-10-92   9:38a
           40 File(s)
    
    
4. Directory of  C:WATKINS\RTSCRPT
    
    DEFS     H         590 08-16-91   1:30a
    GLOBALS  H         176 12-01-91  12:19a
    GRAPHB   C       14445 12-01-91  12:20a
    GRAPHB   H        1705 12-01-91  12:20a
    MATHB    C       10772 11-04-91   8:34p
    MATHB    H        2810 11-04-91   6:16p
    BOUNCE   C        8608 03-10-92   8:54a
    BOUNCE2  C        6986 12-10-91   3:42p
    CANNON   C       15711 12-10-91   1:37p
    DESERT   C        7612 12-10-91   1:44p
    DESK     C       15108 12-10-91   1:47p
    DIE&CARD C       17568 12-10-91   1:58p
    DIE&CARD DSK     18431 03-10-92   8:57a
    DIE&CARD PRJ      5075 03-10-92   8:57a
    DNA      C       10289 12-10-91   6:41p
    ENGINE   C       16446 12-10-91   2:59p
    FLYOVER  C        5166 09-09-91   2:55a
    M&T      C        8752 12-10-91   2:19p
    MOUNT    C       14068 12-10-91   6:40p
    MOUNT    DSK     18393 03-10-92   8:57a
    MOUNT    PRJ      5149 03-10-92   8:57a
    NEWTCRAD C       14435 12-10-91   4:07p
    ORBIT    C       11006 09-09-91   3:09a
    PIANO    C       19198 12-10-91   4:28p
    POOLTABL C       19238 12-10-91   2:30p
    ROBOT    C        8917 12-10-91   3:53p
    SPIN2    C        8815 09-09-91   3:02a
    TETRA    C       14711 12-10-91   6:16p
    TETRA    DSK     18465 03-10-92   8:57a
    TETRA    PRJ      5147 03-10-92   8:57a
    TETSPHR2 C        9914 03-10-92   8:51a
    TETSPHR2 DSK     18443 03-10-92   8:57a
    TETSPHR2 PRJ      5136 03-10-92   8:51a
    WAVES    C        5060 08-27-91   6:18a
    WAVYORB  C        7052 12-10-91   2:49p
           35 File(s) 
    
5. Directory of  C:WATKINS\RAYTRACE
    
    BOUNCE   RT      72463 03-10-92   8:54a
    BOUNCE2  RT      55723 03-10-92   8:54a
    CANNON   RT       6080 03-10-92   8:54a
    DESERT   RT       2751 03-10-92   8:55a
    DESK     RT       6054 03-10-92   8:55a
    DIE&CARD RT      18014 03-10-92   8:57a
    DNA      RT     193463 03-10-92   8:55a
    ENGINE   RT     155000 03-10-92   8:55a
    FLYOVER  RT      37418 03-10-92   8:55a
    M&T      RT      12698 03-10-92   8:55a
    MOUNT    RT      20517 03-10-92   8:57a
    NEWTCRAD RT     127816 03-10-92   8:56a
    ORBIT    RT      70929 03-10-92   8:56a
    PIANO    RT      15207 03-10-92   8:56a
    POOLTABL RT       8158 03-10-92   8:56a
    ROBOT    RT     108062 03-10-92   8:56a
    SPIN2    RT      71254 03-10-92   8:57a
    TETRA    RT      39857 03-10-92   8:57a
    TETSPHR2 RT      24894 03-10-92   8:57a
    WAVES    RT      35488 03-10-92   8:57a
    WAVYORB  RT       2485 03-10-92   8:57a
    DEFS     H         590 08-16-91   1:30a
    GLOBALS  H         176 12-01-91  12:19a
    GRAPHB   C       14445 12-01-91  12:20a
    GRAPHB   H        1705 12-01-91  12:20a
    MATHB    C       10772 11-04-91   8:34p
    MATHB    H        2810 11-04-91   6:16p
    DISP     C        5095 12-09-91   9:41a
    DISP     DSK     17767 03-10-92   9:39a
    DISP     PRJ      5192 03-10-92   9:39a
    PROCESS  C        6150 12-09-91   9:33a
    PROCESS  DSK     17817 03-10-92   9:39a
    PROCESS  PRJ      5137 03-10-92   9:39a
    RAYTRACE C       82924 12-10-91   6:01p
    RAYTRACE DSK     13372 03-10-92   9:39a
    RAYTRACE PRJ      5237 03-10-92   9:39a
    DISP     EXE     33794 03-10-92   9:39a
    PROCESS  EXE     34114 03-10-92   9:39a
    RAYTRACE EXE    124138 03-10-92   9:39a
           39 File(s)
    
    
6. Directory of  C:WATKINS\ANIMATE
    
    DEFS     H         590 08-16-91   1:30a
    ANIMATE  C       11333 03-10-92   9:33a
    ANIMATE  EXE     42499 03-10-92   9:35a
    SPHRPLAN ANI    480769 09-23-91   3:37p
    BOUNCE   ANI    480769 09-13-91  11:22a
    DNA      ANI    480769 08-17-91   5:28p
    WAVES    ANI    480769 08-17-91   2:16p
            7 File(s)
