CCL Home Page
Up Directory CCL Part01
#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh 'Doc/BUGS' <<'END_OF_FILE'
XPlanar mappings don't skew correctly.
XDefining Float == float doesn't breaks refraction.
END_OF_FILE
if test 89 -ne `wc -c <'Doc/BUGS'`; then
    echo shar: \"'Doc/BUGS'\" unpacked with wrong size!
fi
# end of 'Doc/BUGS'
fi
if test -f 'Doc/Copyright' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Doc/Copyright'\"
else
echo shar: Extracting \"'Doc/Copyright'\" \(484 characters\)
sed "s/^X//" >'Doc/Copyright' <<'END_OF_FILE'
X/*
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X * 
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X */
END_OF_FILE
if test 484 -ne `wc -c <'Doc/Copyright'`; then
    echo shar: \"'Doc/Copyright'\" unpacked with wrong size!
fi
# end of 'Doc/Copyright'
fi
if test ! -d 'Doc/Guide' ; then
    echo shar: Creating directory \"'Doc/Guide'\"
    mkdir 'Doc/Guide'
fi
if test -f 'Doc/Guide/README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Doc/Guide/README'\"
else
echo shar: Extracting \"'Doc/Guide/README'\" \(450 characters\)
sed "s/^X//" >'Doc/Guide/README' <<'END_OF_FILE'
XThis directory contains a draft of the Rayshade User's Guide.
XIt is written using LaTeX macros.  To create the corresponding
X"dvi" file, run "latex guide" twice from this directory.
XThe resulting "guide.dvi" file should be fed to your favorite
Xdvi --> readable-format converter.
X
XIf you do not have LaTeX, a postscript version of this document
Xis available via anonymous ftp from weedeater.math.yale.edu
X(130.132.23.17) in pub/rayshade.4.0/guide.ps.
END_OF_FILE
if test 450 -ne `wc -c <'Doc/Guide/README'`; then
    echo shar: \"'Doc/Guide/README'\" unpacked with wrong size!
fi
# end of 'Doc/Guide/README'
fi
if test ! -d 'Examples' ; then
    echo shar: Creating directory \"'Examples'\"
    mkdir 'Examples'
fi
if test -f 'Examples/ashtray.def.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/ashtray.def.ray'\"
else
echo shar: Extracting \"'Examples/ashtray.def.ray'\" \(738 characters\)
sed "s/^X//" >'Examples/ashtray.def.ray' <<'END_OF_FILE'
X/*
X * Ashtray object
X * C. Kolb 11/1990
X *
X * $Id: ashtray.def.ray,v 4.0 91/07/17 14:25:26 kolb Exp Locker: kolb $
X */
Xname indent_proto grid 3 2 1
X	cylinder  0.5  0 -1.2 0  0 1.2 0
X		disc .5 0 -1.2 0 0 -1 0
X		disc .5 0  1.2 0 0  1 0
X	cylinder  0.5  2 -1.2 0  2 1.2 0
X		disc .5 2 -1.2 0 0 -1 0
X		disc .5 2  1.2 0 0  1 0
X	cylinder 0.5  -2 -1.2 0 -2 1.2 0 
X		disc .5 -2 -1.2 0 0 -1 0
X		disc .5 -2  1.2 0 0  1 0
Xend
X
X
Xname rests grid 3 3 1
X	object indent_proto translate 0 -5. .2
X	object indent_proto translate 0  5. .2 
X	object indent_proto rotate 0 0 1 90 translate 5. 0  .2
X	object indent_proto rotate 0 0 1 90 translate -5. 0 .2
Xend
X
X
Xname ashtray difference
X	difference box -5 -5 -3  5 5 0 torus 3 1.5 0 0 0 0 0 1 end
X	object rests
Xend
END_OF_FILE
if test 738 -ne `wc -c <'Examples/ashtray.def.ray'`; then
    echo shar: \"'Examples/ashtray.def.ray'\" unpacked with wrong size!
fi
# end of 'Examples/ashtray.def.ray'
fi
if test -f 'Examples/ashtray.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/ashtray.ray'\"
else
echo shar: Extracting \"'Examples/ashtray.ray'\" \(463 characters\)
sed "s/^X//" >'Examples/ashtray.ray' <<'END_OF_FILE'
X/*
X * Painted ashtray
X * C Kolb 12/90
X * Set IMAGEFILE to image you wish to use.
X */
X#ifndef IMAGEFILE
X#define IMAGEFILE /usr/u/utah/img/mandrill.rle
X#endif
X
Xreport verbose
X
X#include "ashtray.def.ray"
X
Xsurface white ambient .1 .1 .1 diffuse .6 .6 .6 specular .4 .4 .4
Xplane white 0 0 -3  0 0 1
Xobject ashtray
X	texture image IMAGEFILE map planar
X		scale 10 10 1 translate -5 -5 0
X
Xlight 1. directional -.5 -1 1.9
Xbackground .1 .3 .8
Xeyep 5. -15 13.
Xscreen 256 256
END_OF_FILE
if test 463 -ne `wc -c <'Examples/ashtray.ray'`; then
    echo shar: \"'Examples/ashtray.ray'\" unpacked with wrong size!
fi
# end of 'Examples/ashtray.ray'
fi
if test -f 'Examples/blob.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/blob.ray'\"
else
echo shar: Extracting \"'Examples/blob.ray'\" \(500 characters\)
sed "s/^X//" >'Examples/blob.ray' <<'END_OF_FILE'
X/*
X * Example blob input file, courtesy of Mark Podlipec
X */
Xeyep  0.0 -6.0 1.0
Xlookp 0.0 0.0 0.0
Xfov 45. 45.
Xscreen 240 240
Xlight 1.4 point 15.  -20. 25.
Xlight 0.7 point 5. -25. 10.
Xsurface white ambient .02 .02 .02 diffuse .5 .5 .5 specular .8 .8 .8 specpow 32
X
Xblob white  0.6 1.0 1.0  -0.900  0.000  0.000
X                1.0 1.0   0.900  0.000  0.000 
X                1.0 1.0   0.000  0.000 -0.900 
X                1.0 1.0   0.000  0.000  0.900 texture marble 
X
Xplane white 0. 0. -3.77   0 0 1
X
END_OF_FILE
if test 500 -ne `wc -c <'Examples/blob.ray'`; then
    echo shar: \"'Examples/blob.ray'\" unpacked with wrong size!
fi
# end of 'Examples/blob.ray'
fi
if test -f 'Examples/glass.def.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/glass.def.ray'\"
else
echo shar: Extracting \"'Examples/glass.def.ray'\" \(348 characters\)
sed "s/^X//" >'Examples/glass.def.ray' <<'END_OF_FILE'
X/*
X * Drinking glass object.
X * C. Kolb 12/89
X */
Xname glass
Xunion
X	torus 0.95 0.06 0 0 2 0 0 1
X	difference
X		list /* outer glass */
X			cone 0.9 0 0 -0.001 1.0 0 0 2
X			disc 1 0 0 2 0 0 1
X			disc 0.9 0 0 -.001 0 0 -1
X		end
X		list /* inner glass */
X			cone 0.7 0 0 0.1   0.9 0 0 2.2
X			disc .9 0 0 2.2 0 0 1
X			disc .7 0 0 0.1 0 0 -1
X		end
X	end
Xend
END_OF_FILE
if test 348 -ne `wc -c <'Examples/glass.def.ray'`; then
    echo shar: \"'Examples/glass.def.ray'\" unpacked with wrong size!
fi
# end of 'Examples/glass.def.ray'
fi
if test -f 'Examples/glass.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/glass.ray'\"
else
echo shar: Extracting \"'Examples/glass.ray'\" \(531 characters\)
sed "s/^X//" >'Examples/glass.ray' <<'END_OF_FILE'
X/*
X * Bump-mapped transparent drinking glass on checkerboard
X * C Kolb 12/90
X */
X#include "glass.def.ray"
X
Xsurface glass
X	diffuse .08 .08 .08 specular .2 .2 .2
X	reflect 1. transp 1 body .8 .8 .8 index 1.3
Xsurface white ambient 1 1 1
Xsurface red diffuse .8 0 0  ambient .1 0 0 specular .6 .6 .6
X
Xobject glass glass /*texture bump 0.2 scale .2 .2 .2*/
X
Xplane ambient .1 .1 .1 diffuse .7 .7 .7 0 0 0  0 0 1
X		texture checker red scale .8 .8 .8 translate 0 0 -.2
X
Xbackground .1 .3 .8
Xeyep 0 -10 7
Xfov 30
Xlight 1. directional 1. -1. 1.
END_OF_FILE
if test 531 -ne `wc -c <'Examples/glass.ray'`; then
    echo shar: \"'Examples/glass.ray'\" unpacked with wrong size!
fi
# end of 'Examples/glass.ray'
fi
if test -f 'Examples/planet.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/planet.ray'\"
else
echo shar: Extracting \"'Examples/planet.ray'\" \(467 characters\)
sed "s/^X//" >'Examples/planet.ray' <<'END_OF_FILE'
X/*
X * "planet" input file to demonstrate fbm texture and use of cpp
X * C. Kolb
X */
X#define EXPAND(x)	scale x x x
X
X#define LACUNARITY	2.
X#define OCTAVES		6
X
Xscreen 256 256
Xlight 1.0 0.9 0.8 directional 1. -1. 1.
Xeyep 0. -4. 0.
Xsphere  ambient .06 .05 .04
X	diffuse .9 .85 .8
X	1.0 0 0 0
X	texture fbm 	0.		/* offset */
X			1.		/* scale */
X			0.3		/* h */
X			LACUNARITY	/* lambda */
X			OCTAVES		/* octaves */
X			-.2		/* thresh */
X			planet.map 	/* mapname */
X		EXPAND(0.7)
END_OF_FILE
if test 467 -ne `wc -c <'Examples/planet.ray'`; then
    echo shar: \"'Examples/planet.ray'\" unpacked with wrong size!
fi
# end of 'Examples/planet.ray'
fi
if test -f 'Examples/stripe.ray' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Examples/stripe.ray'\"
else
echo shar: Extracting \"'Examples/stripe.ray'\" \(641 characters\)
sed "s/^X//" >'Examples/stripe.ray' <<'END_OF_FILE'
X/*
X * Simple demo of how uv texturing and bump mapping works.
X * You'll need to define the pathname of an image you want to slap
X * on the cylinder.
X *
X * To run, say something like:
X * 	rayshade -v -C -DIMAGEFILE=mandrill.rle stripe.ray > stripe.rle
X *
X * C. Kolb 12/90
X */
X#ifndef IMAGEFILE
X#define IMAGEFILE /usr/u/utah/img/mandrill.rle
X#endif
X
Xsurface white ambient .1 .1 .1  diffuse .6 .6 .6
X
Xcylinder 1  -3 0 0  3 0 0
X	texture stripe white 0.1 3 /* add ten stripes per, rotated */
X		scale .1 .1 1.
X		rotate 0 0 1 45
X	texture image		/* and smack on 25 copies of the image */
X		IMAGEFILE
X		textsurf white
X		scale .2 .2 1.
Xscreen 500 160
END_OF_FILE
if test 641 -ne `wc -c <'Examples/stripe.ray'`; then
    echo shar: \"'Examples/stripe.ray'\" unpacked with wrong size!
fi
# end of 'Examples/stripe.ray'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(12384 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X Configure                 19	Configuration script
X Doc                        1	Rayshade documents
X Doc/BUGS                   1	Known bugs
X Doc/Changes                3	Rencent changes
X Doc/Copyright              1	Copyright information
X Doc/Globals                5	Global variable information
X Doc/Guide                  1	User's Guide
X Doc/Guide/README           1	User's Guide information
X Doc/Guide/animate.tex      8	Animation documentation
X Doc/Guide/camera.tex      10	Camera documentation module
X Doc/Guide/guide.tex        2	Rayshade user's guide and ref manual
X Doc/Guide/height.tex       5	Heightfield documentation
X Doc/Guide/intro.tex        6	Introduction
X Doc/Guide/lights.tex      12	Light source documentation
X Doc/Guide/objects.tex     16	Object documentation
X Doc/Guide/options.tex     10	Command-line option document
X Doc/Guide/preface.tex      7	Babblings
X Doc/Guide/running.tex     15	Overview of running rayshade
X Doc/Guide/surfaces.tex    13	Description of surface properties
X Doc/Guide/texture.tex     15	Texturing document
X Doc/Guide/transform.tex    3	Transformations
X Doc/TODO                   3	List of proposed projects
X Doc/quickref.txt          13	Rayshade quick reference guide
X Examples                   1	Example rayshade input
X Examples/ashtray.def.ray   1	Ashtray object
X Examples/ashtray.ray       1	Ashtray scene
X Examples/balls.ray         2	Ten spheres
X Examples/blob.ray          1	Blob scene
X Examples/boxball.ray       3	Sphere/box csg scene
X Examples/coin.ray          2	Flipping coin demo
X Examples/csg.ray           5	Csg scene
X Examples/glass.def.ray     1	Glass object
X Examples/glass.ray         1	Glass scene
X Examples/mtv.ray           5	Muse Ick TV logo
X Examples/planet.map        6	Colormap used in planet.ray
X Examples/planet.ray        1	Texture-mapped sphere
X Examples/pool.ray          7	Gaudy pool table
X Examples/solids.ray        2	Sphere and cone
X Examples/stripe.ray        1	Stripe example
X MANIFEST                   1	
X Makefile                   1	Toplevel Makefile
X README                     1	General information
X Reconfigure                3	Extract .SH files from given config
X blurb.urt                 11	Utah Raster Toolkit information
X config.H                  10	Example configuration header
X config.h.SH               10	Script to generate config.h
X etc                        1	Tools and other goodies
X etc/Makefile.SH            2	Script to generate tool Makefile
X etc/malloc.sgi             4	Suggested malloc tuning on sgi machines
X etc/nff2shade.awk          7	NFF-->rayshade conversion awk script
X etc/rsconvert              1	Old rayshade input --> new conversion
X etc/rsconvert/Makefile.SH  4	Script to generate conversion Makefile
X etc/rsconvert/lex.l        8	Lexical analysis for converter
X etc/rsconvert/main.c       4	Conversion driver
X etc/rsconvert/yacc.y      16	Conversion actions
X libray                     1	Ray tracing library	
X libray/Makefile            1	libray Makefile	
X libray/libcommon           1	Common routines/data structures
X libray/libcommon/Makefile.SH  4	Script to produce Makefile
X libray/libcommon/color.h   3	Color definitions
X libray/libcommon/common.h  5	Headers for useful routines
X libray/libcommon/error.h   3	Error reporting definitions
X libray/libcommon/expr.c   10	Expression handling
X libray/libcommon/expr.h    3	Expression definitions
X libray/libcommon/memory.c  4	Memory allocation
X libray/libcommon/ray.h     2	Ray definitions
X libray/libcommon/rotate.c  6	Rotation methods
X libray/libcommon/rotate.h  3	Rotationdefinitions
X libray/libcommon/sampling.c  7	Sampling control
X libray/libcommon/sampling.h  3	Sampling definitions
X libray/libcommon/scale.c   4	Scaling methods
X libray/libcommon/scale.h   2	Scaling definitions
X libray/libcommon/transform.c 14	Transformation routines
X libray/libcommon/transform.h  5	Transformation definitions
X libray/libcommon/translate.c  4	Translation methods
X libray/libcommon/translate.h  3	Translation definitions
X libray/libcommon/vecmath.c  7	Vector manipulation routines
X libray/libcommon/vector.h  5	Vector definitions
X libray/libcommon/xform.c   5	Linear transformation methods
X libray/libcommon/xform.h   5	Linear transformation definitions
X libray/libimage            1	Image reading library
X libray/libimage/Makefile.SH  4	Script to produce imagelib Makefile
X libray/libimage/image.c    9	Image reading routines
X libray/libimage/image.h    3	Image reading definitions
X libray/liblight            1	Light source library
X libray/liblight/Makefile.SH  4	Script to produce liblight Makefile
X libray/liblight/extended.c  6	Extended light source methods
X libray/liblight/extended.h  2	Extended source definitions
X libray/liblight/infinite.c  4	Infinite light source methdos
X libray/liblight/infinite.h  2	Infinite source definitions
X libray/liblight/jittered.c  5	Jittered light source methods
X libray/liblight/jittered.h  2	Jittered source definitions
X libray/liblight/light.c    5	Lighting calculations
X libray/liblight/light.h    5	Light definitions
X libray/liblight/point.c    4	Point source methods
X libray/liblight/point.h    2	Point source definitions
X libray/liblight/shadow.c  11	Shadow determination routines
X libray/liblight/spot.c     7	Spot light methods
X libray/liblight/spot.h     2	Spot light definitions
X libray/libobj              1	Object library
X libray/libobj/Makefile.SH  4	Script to generate libobj Makefile
X libray/libobj/blob.c      17	Blobby molecule methods
X libray/libobj/blob.h       4	Blobby molecule definitions 
X libray/libobj/bounds.c     9	Bounding box routines
X libray/libobj/bounds.h     3	Bounding box definitions
X libray/libobj/box.c        7	Box methods
X libray/libobj/box.h        2	Box defininitions
X libray/libobj/cone.c      10	Cone methods
X libray/libobj/cone.h       2	Cone definitions
X libray/libobj/csg.c       14	Construct solid geometry methods
X libray/libobj/csg.h        3	CSG definitions
X libray/libobj/cylinder.c   8	Cylinder methods
X libray/libobj/cylinder.h   2	Cylinder definitions
X libray/libobj/disc.c       8	Disc methods
X libray/libobj/disc.h       2	Disc definitions
X libray/libobj/geom.c      13	Geometric object support routines
X libray/libobj/geom.h       8	Geometric object definitions
X libray/libobj/grid.c      14	Uniform spatial subdivision methods
X libray/libobj/grid.h       4	Uniform spatial subdivision definitions
X libray/libobj/hf.c        16	Height field methods
X libray/libobj/hf.h         6	Height field definitions
X libray/libobj/instance.c   6	Object instantiation methods	
X libray/libobj/instance.h   3	Instantiation definitions	
X libray/libobj/intersect.c  8	Intersection routines
X libray/libobj/list.c       7	List methods        
X libray/libobj/list.h       2	List definitions
X libray/libobj/plane.c      7	Plane methods
X libray/libobj/plane.h      2	Plane definitions
X libray/libobj/poly.c      12	Polygon methods
X libray/libobj/poly.h       3	Polygon definitions
X libray/libobj/roots.c      8	Cubic and quartic root finding routines
X libray/libobj/sphere.c     8	Sphere methods
X libray/libobj/sphere.h     2	Sphere definitions
X libray/libobj/torus.c     12	Torus methods
X libray/libobj/torus.h      3	Torus definitions
X libray/libobj/triangle.c  15	Triangle methods
X libray/libobj/triangle.h   4	Triangle definitions
X libray/libsurf             1	Surface library
X libray/libsurf/Makefile.SH  4	Script to generate libsurf Makefile
X libray/libsurf/atmosphere.c  5	Atmospheric effects support routines
X libray/libsurf/atmosphere.h  3	Atmospheric effects defintions
X libray/libsurf/fog.c       4	Fog methods
X libray/libsurf/fog.h       2	Fog definitions
X libray/libsurf/fogdeck.c   6	Fog deck
X libray/libsurf/fogdeck.h   2	Fog deck definitions
X libray/libsurf/mist.c      4	Mist methods
X libray/libsurf/mist.h      2	Mist definitions
X libray/libsurf/surface.c   7	Surface support routines
X libray/libsurf/surface.h   5	Surface definitions
X libray/libsurf/surfshade.c  9	Surface shading routines
X libray/libtext             1	Texturing library
X libray/libtext/Makefile.SH  4	Script to generate libtext Makefile
X libray/libtext/blotch.c    3	Blotch methods
X libray/libtext/blotch.h    2	Blotch definitiosn
X libray/libtext/bump.c      3	Bump texture methods
X libray/libtext/bump.h      1	Bump definitions
X libray/libtext/checker.c   3	Checker texture methods
X libray/libtext/checker.h   2	Checker definitions
X libray/libtext/cloud.c     6	Cloud texture methods
X libray/libtext/cloud.h     2	Cloud definitions
X libray/libtext/fbm.c       5	Fractional Brownian motion methods
X libray/libtext/fbm.h       2	fBm definitions
X libray/libtext/fbmbump.c   3	fBm-based bump methods
X libray/libtext/fbmbump.h   1	fBm bump definitions
X libray/libtext/gloss.c     3	Glossy reflection methods
X libray/libtext/gloss.h     1	Glossy reflection definitions
X libray/libtext/imagetext.c 10	Image texturing methods
X libray/libtext/imagetext.h  3	Image texturing definitions
X libray/libtext/mapping.c   9	Inverse mapping methods
X libray/libtext/mapping.h   2	Inverse mapping definitions
X libray/libtext/marble.c    4	Marble texture methods
X libray/libtext/marble.h    2	Marble definitions
X libray/libtext/mount.c     3	Mountain texture methods
X libray/libtext/mount.h     2	Mountain texture definitions
X libray/libtext/noise.c    11	Noise function
X libray/libtext/sky.c       4	Sky texture methods
X libray/libtext/sky.h       2	Sky texture definitions
X libray/libtext/stripe.c    6	Stripe texture methods
X libray/libtext/stripe.h    2	Stripe texture definitions
X libray/libtext/textaux.c   9	Texturing support routines
X libray/libtext/texture.c   9	Texturing driving routines
X libray/libtext/texture.h   5	Texture definitions
X libray/libtext/windy.c     4	Windy-blown water texture
X libray/libtext/windy.h     2	Definitions for windy texture
X libray/libtext/wood.c      5	Wood texture methods
X libray/libtext/wood.h      1	Wood texture definitions
X libshade                   1	libray/rayshade interface library	
X libshade/Makefile.SH       6	Makefile for rayshade library	
X libshade/builtin.c         3	Builtin functions
X libshade/builtin.h         1	Builtin definitions
X libshade/defaults.h        4	Defaults	
X libshade/funcdefs.h        2	Various prototypes
X libshade/lex.l             9	Lexical analysis
X libshade/lightdef.c        7	Light definition
X libshade/misc.c            8	Useful routines	
X libshade/objdef.c          5	Object definition
X libshade/options.c        12	Option-parsing
X libshade/options.h         7	Option declarations
X libshade/picture.c        11	Image file manipulation	
X libshade/picture.h         2	Image file definitions	
X libshade/rayshade.h        1	Useful includes for libshade
X libshade/setup.c           9	Initializtion and cleanup	
X libshade/shade.c          13	Shading calculations
X libshade/stats.c           8	Statistics reporting	
X libshade/stats.h           3	Statistics header
X libshade/surfdef.c         6	Surface definition	
X libshade/symtab.c          7	Symbol table manipulation
X libshade/symtab.h          3	Symbol table declarations
X libshade/viewing.c        12	Camera manipulation
X libshade/viewing.h         3	Viewing declarations
X libshade/yacc.y           18	Rayshade input parsing	
X patchlevel.h               1	Patch level information	
X raypaint                   1	Raypaint application	
X raypaint/Makefile.SH       6	Raypaint Makefile
X raypaint/README            5	General raypaint information
X raypaint/glgraphics.c      6	SGI graphics support	
X raypaint/main.c            6	Raypaint main
X raypaint/render.c         17	Driving routines
X raypaint/version.c         1	Version information	
X raypaint/xgraphics.c      11	X11 graphics support
X rayshade                   1	Rayshade application
X rayshade/Makefile.SH       6	Rayshade Makefile
X rayshade/main.c            5	Rayshade main
X rayshade/raytrace.c       14	Screen sampling, etc.
X rayshade/raytrace.h        2	Sampling definitions
X rayshade/version.c         1	Version information
X rayview                    1	Rayshade previewer
X rayview/Makefile.SH        6	Makefile for previewer
X rayview/README             1	General rayview information 
X rayview/glmethods.c       18	Support routines for SGI's GL
X rayview/main.c             4	Preview driver
X rayview/spheregen.c       11	Sphere generation
X rayview/version.c          1	Version information
END_OF_FILE
if test 12384 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Makefile'\"
else
echo shar: Extracting \"'Makefile'\" \(529 characters\)
sed "s/^X//" >'Makefile' <<'END_OF_FILE'
X#
X# Makefile for rayshade distribution
X# C. Kolb 1/91
X#
X# $Id: Makefile,v 4.0.1.1 91/10/10 18:33:14 cek Exp Locker: cek $
X#
X
XMAKE = make -$(MAKEFLAGS)
XSTUFF = libray libshade rayshade etc
XSHELL = /bin/sh
X
Xdefault:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE)); \
X	done
X
X#
X# Have to keep clean/depend separete so
X# Configure will work
X#
X
Xdepend:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE) depend); \
X	done
X
Xclean:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE) clean); \
X	done
X
Xkit:
X	(makekit -iMANIFEST.new -oMANIFEST -s 52K)
END_OF_FILE
if test 529 -ne `wc -c <'Makefile'`; then
    echo shar: \"'Makefile'\" unpacked with wrong size!
fi
# end of 'Makefile'
fi
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(8030 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
XThis is version 4.0 of rayshade, a ray tracing program.
XRayshade reads a multi-line ASCII file describing a scene to be rendered
Xand produces a Utah Raster Toolkit "RLE" format file containing the
Xray traced image.
X
XRayshade features:
X
X	Eleven primitives (blob, box, cone, cylinder, height field,
X	plane, polygon, sphere, torus, flat- and Phong-shaded triangle)
X
X	Aggregate objects
X
X	Constructive solid geometry
X
X	Point, directional, extended, spot, and quadrilateral light sources
X
X	Solid procedural texturing, bump mapping, and
X		2D "image" texture mapping
X
X	Antialiasing through variable-rate "jittered" sampling
X
X	Arbitrary linear transformations on objects and texture/bump maps.
X
X	Use of uniform spatial subdivision or hierarchy of bounding
X		volumes to speed rendering
X
X	Options to facilitate rendering of stereo pairs
X
X	Rudimentary animation support
X
X
XThere are many differences between rayshade versions 3.0 and 4.0.  In
Xparticular, the input syntax has changed.  Input files created for
Xversion 3.0 must be converted to version 4.0 syntax using the provided
Xconversion utility, rsconvert.  See Doc/Changes for a list of some of
Xthe more important changes.
X
XRayshade v4.0 has been tested on many different UNIX-based computers,
Xincluding: SGI 4D, IBM RS6000, Sun Sparcstation 1, Sun 3, DECstation,
XApollo DN10000, NeXT.  If your machine has a C compiler, enough memory
X(at least 2Mb), and runs something resembling UNIX, rayshade should be fairly
Xeasy to port.  Be warned that rayshade uses yacc and lex to process input
Xfiles.  If you do not have lex and yacc, try to get flex and bison from
Xthe Free Software Foundation folks (ftp to prep.ai.mit.edu).  Attempts
Xto port rayshade to 16-bit machines will likely lead to nothing but
Xa profound sense of frustration.
X
XRayshade uses a Configure script in order to determine how it should
Xbe compiled.  This means that if you're not runing under UNIX, you'll
Xprobably have to create a config.h and edit the Makefiles by hand.
XIf you create a config.h file and/or Makefiles for use in an non-UNIX
Xenvironment, send them to us and we will make it available for use by
Xothers.  The prototype config.H file may be of some help.
X
XNormally, rayshade makes use of the Utah Raster toolkit.  You are
Xstrongly encouraged to get a copy of the toolkit, as it provides a
Xhost of useful tools for image manipulation and a library for reading/writing
Xthe toolkit's "RLE" format image files.  "blurb.urt" is the "blurb" file from
Xthe latest distribution of the toolkit.  Also of interest is the
X"fbm" library, available from nl.cs.cmu.edu:/usr/mlm/ftp/fbm.tar.Z, which
Xprovides additional tools for converting Utah Raster format images
Xto/from other formats.
X
XIf you do not want to or cannot use the Utah Raster toolkit, rayshade
Xcan be configured to create image files using a generic format
Xidentical to that used by Mark VandeWettering's "mtv" ray tracer.
X
XThe rayshade distribution consists of two libraries (libray, libshade) and
Xseveral applications (rayshade proper, rayview, raypaint) that are
Xlinked against these libraries.  To compile, run the Configure script to
Xgenerate config.h and the Makefiles, then run "make depend"
Xfollowed by "make".  If the Configuration script fails, or if
Xit can't determine a way to generate dependencies, you'll probably
Xhave to edit the Makefiles or extract them from the Makefile.SH scripts
Xby hand.  Don't be overly alarmed if there are a few non-fatal error
Xmessages while running "make depend"
X
XThe Doc directory contains a User's Guide in the Guide subdirectory,
Xas well as a quick-reference sheet and some information that might
Xbe useful in porting or modifying rayshade.  To create a formatted
Xversion of the User's Guide, you'll need LaTeX.  If you don't have
XLaTeX, a postscript version of the Guide is available via anonymous
Xftp from weedeater.math.yale.edu (see below).
X
XThe etc directory contains miscellaneous goodies, including the source
Xto a filter to convert rayshade v3.0 input to rayshade 4.0.
XThe Example directory contains example input files, which may be
Xused to test rayshade and to familiarize yourself with rayshade's input
Xsyntax.  You can also run any one of Eric Haines'
XStandard Procedural Databases through awk using the etc/nff2shade.awk
Xscript, and then feed the results to rayshade.  Note that for several
Xof the databases, you will need to tweak the data a bit to achieve
Xoptimal runtimes.  See nff2shade.awk for details.
X
XRayshade was not designed to be, nor is it, the be-all and end-all of
Xray tracers.  It was meant to be reasonably fast, portable, and easy to
Xmodify.  It has some nice features which allow you to produce
Xpretty pictures, but there are countless extensions, modifications,
Xand improvements which could be made.  There are many routines which may be
Xoptimized and many features which could be added.  For a list of suggested
Ximprovements and projects see "TODO".  You are strongly encouraged to modify
Xthe source code left and right.
X
XWhile there is currently no documentation for the libraries, it
Xshould be easy for you to add your own primitives, textures, aggregates,
Xand light sources by looking at the code and sending mail if you get
Xstuck.
X
XAdditional rayshade goodies are available via anonymous ftp from
Xweedeater.math.yale.edu (130.132.23.17) in pub/rayshade.4.0.
XIf you have contributions of new objects, textures, input files,
Xconfiguration files, or images to make, feel free to send us email or
Xto drop off a copy via ftp in the "incoming" directory on weedeater.
X
XThe first version of rayshade was written by Craig Kolb, David P. Dobkin,
Xand David C. Hoffman during 1987-1988, and was heavily based on an
X"introductory" public domain ray tracer written by Roman Kuchkuda.
XRayshade v3.0 was written by Craig Kolb and released in the Fall of 1989.
XRayshade v4.0 was written by Craig Kolb and Rod Bogart during 1990-1991.
X
XRayshade was made possible by many people who have made suggestions,
Xfixed bugs, and who have been all-around good sports about the whole thing.
X
XThanks to Gavin Bell, David Dobkin, Eric Haines, Lefteris Koutsofios,
XKen Musgrave, Przemek Prusinkiewicz, and Allan Snider for their
Xencouragement, comments, and willingness to be on the Front Lines.
X
XThanks to Roman Kuchkuda for providing such a solid base upon which
Xto build.
X
XSpecial thanks to Robert Skinner for providing the Noise(), DNoise(),
Xand other texturing functions and allowing them to be redistributed.
X
XPat Hanrahan's OOGL provided the spirit (if not the letter) of the
Xmodularity of rayshade v4.0.  Thanks to Pat and to Mark VandeWettering
Xfor the 'net tracer' conversations and for the inspiration to do something
Xto clean up rayshade.
X
XThanks to Marc Andreessen, Tony Apodaca, Ray Bellis, Dominique Boisvert,
XWilliam Bouma, Allen Braunsdorf, Jeff Butterworth, Nick Carriero,
XNancy Everson, Tom Friedel, Robert Funchess, David Gelernter, Mike Gigante,
XEd Herderick, John Knuston, Raphael Manfredi, Lee Moore, Dietmar Saupe,
XIain Sinclair, Brian Wyvill, and everybody else for their bugfixes,
Xsuggestions, input files, encouragement, and other feedback.
X
XThanks also to Mark Podlipec for providing the blob and torus objects.
X
XThanks to Jochen Schwarze for the cubic and quartic root-finding functions.
XHis code, and a host of other useful routines, can be found in
X"Graphics Gems", edited by Andrew Glassner.
X
XThanks to Benoit Mandelbrot for the support he provided this project.
X
XIf you find any bugs, make any useful extensions, have a nice input file,
Xport rayshade to a new environment, or need assistance understanding a
Xparticularly braindamaged section of code, please let us know.  We can be
Xmost easily reached by email.
X
XOnce you start using rayshade, and you'd like to be kept abreast of
Xchanges and extensions, send a message to rayshade-request@cs.princeton.edu,
Xand we'll add you to the rayshade mailing list.
X
XCraig Kolb
XRod Bogart
X10 January 1992
Xrayshade-request@cs.yale.edu
X
XCraig Kolb 
XComputer Science Department
XPrinceton University
X35 Olden St.
XPrinceton, NJ 08544
END_OF_FILE
if test 8030 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test ! -d 'etc' ; then
    echo shar: Creating directory \"'etc'\"
    mkdir 'etc'
fi
if test ! -d 'etc/rsconvert' ; then
    echo shar: Creating directory \"'etc/rsconvert'\"
    mkdir 'etc/rsconvert'
fi
if test ! -d 'libray' ; then
    echo shar: Creating directory \"'libray'\"
    mkdir 'libray'
fi
if test -f 'libray/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libray/Makefile'\"
else
echo shar: Extracting \"'libray/Makefile'\" \(501 characters\)
sed "s/^X//" >'libray/Makefile' <<'END_OF_FILE'
X#
X# Makefile for libray
X# C. Kolb 1/91
X#
X# $Id: Makefile,v 4.0.1.1 91/10/10 18:33:41 cek Exp Locker: cek $
X#
XMAKE = make -$(MAKEFLAGS)
XSTUFF = libcommon libobj libimage liblight libsurf libtext
XSHELL = /bin/sh
X
Xdefault:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE)); \
X	done
X
X#
X# Have to keep clean/depend separete so
X# Configure will work
X#
X
Xdepend:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE) depend); \
X	done
X
Xclean:
X	for i in $(STUFF); do \
X		(cd $$i && $(MAKE) clean); \
X	done
X	rm -f libray.a
END_OF_FILE
if test 501 -ne `wc -c <'libray/Makefile'`; then
    echo shar: \"'libray/Makefile'\" unpacked with wrong size!
fi
# end of 'libray/Makefile'
fi
if test ! -d 'libray/libcommon' ; then
    echo shar: Creating directory \"'libray/libcommon'\"
    mkdir 'libray/libcommon'
fi
if test ! -d 'libray/libimage' ; then
    echo shar: Creating directory \"'libray/libimage'\"
    mkdir 'libray/libimage'
fi
if test ! -d 'libray/liblight' ; then
    echo shar: Creating directory \"'libray/liblight'\"
    mkdir 'libray/liblight'
fi
if test ! -d 'libray/libobj' ; then
    echo shar: Creating directory \"'libray/libobj'\"
    mkdir 'libray/libobj'
fi
if test ! -d 'libray/libsurf' ; then
    echo shar: Creating directory \"'libray/libsurf'\"
    mkdir 'libray/libsurf'
fi
if test ! -d 'libray/libtext' ; then
    echo shar: Creating directory \"'libray/libtext'\"
    mkdir 'libray/libtext'
fi
if test -f 'libray/libtext/bump.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libray/libtext/bump.h'\"
else
echo shar: Extracting \"'libray/libtext/bump.h'\" \(859 characters\)
sed "s/^X//" >'libray/libtext/bump.h' <<'END_OF_FILE'
X/*
X * bump.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: bump.h,v 4.0 91/07/17 14:41:43 kolb Exp Locker: kolb $
X *
X * $Log:	bump.h,v $
X * Revision 4.0  91/07/17  14:41:43  kolb
X * Initial version.
X * 
X */
X#ifndef BUMP_H
X
X#define TextBumpCreate(s)	TextCreate((TextRef) BumpCreate(s), \
X					BumpApply)
Xtypedef struct {
X	Float size;
X} Bump;
X
Xextern Bump *BumpCreate();
Xextern void BumpApply();
X
X#endif /* BUMP_H */
END_OF_FILE
if test 859 -ne `wc -c <'libray/libtext/bump.h'`; then
    echo shar: \"'libray/libtext/bump.h'\" unpacked with wrong size!
fi
# end of 'libray/libtext/bump.h'
fi
if test -f 'libray/libtext/fbmbump.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libray/libtext/fbmbump.h'\"
else
echo shar: Extracting \"'libray/libtext/fbmbump.h'\" \(862 characters\)
sed "s/^X//" >'libray/libtext/fbmbump.h' <<'END_OF_FILE'
X/*
X * fbmbump.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: fbmbump.h,v 4.0 91/07/17 14:42:24 kolb Exp Locker: kolb $
X *
X * $Log:	fbmbump.h,v $
X * Revision 4.0  91/07/17  14:42:24  kolb
X * Initial version.
X * 
X */
X#ifndef FBMBUMP_H
X
X#define TextFBmBumpCreate(o,s,h,l,n) TextCreate( \
X		(TextRef)FBmBumpCreate(o, s,h,l,n),FBmBumpApply)
Xextern FBm *FBmBumpCreate();
Xextern void FBmBumpApply();
X
X#endif /* FBMBUMP_H */
END_OF_FILE
if test 862 -ne `wc -c <'libray/libtext/fbmbump.h'`; then
    echo shar: \"'libray/libtext/fbmbump.h'\" unpacked with wrong size!
fi
# end of 'libray/libtext/fbmbump.h'
fi
if test -f 'libray/libtext/gloss.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libray/libtext/gloss.h'\"
else
echo shar: Extracting \"'libray/libtext/gloss.h'\" \(891 characters\)
sed "s/^X//" >'libray/libtext/gloss.h' <<'END_OF_FILE'
X/*
X * gloss.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: gloss.h,v 4.0 91/07/17 14:42:33 kolb Exp Locker: kolb $
X *
X * $Log:	gloss.h,v $
X * Revision 4.0  91/07/17  14:42:33  kolb
X * Initial version.
X * 
X */
X#ifndef GLOSS_H
X
X#define TextGlossCreate(g)	TextCreate((TextRef) GlossCreate(g), \
X					GlossApply)
Xtypedef struct {
X	Float glossy;		/* glossiness */
X} Gloss;
X
Xextern Gloss *GlossCreate();
Xextern void GlossApply();
X
X#endif /* GLOSS_H */
END_OF_FILE
if test 891 -ne `wc -c <'libray/libtext/gloss.h'`; then
    echo shar: \"'libray/libtext/gloss.h'\" unpacked with wrong size!
fi
# end of 'libray/libtext/gloss.h'
fi
if test -f 'libray/libtext/wood.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libray/libtext/wood.h'\"
else
echo shar: Extracting \"'libray/libtext/wood.h'\" \(839 characters\)
sed "s/^X//" >'libray/libtext/wood.h' <<'END_OF_FILE'
X/*
X * wood.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: wood.h,v 4.0 91/07/17 14:44:38 kolb Exp Locker: kolb $
X *
X * $Log:	wood.h,v $
X * Revision 4.0  91/07/17  14:44:38  kolb
X * Initial version.
X * 
X */
X#ifndef WOOD_H
X
X#define TextWoodCreate()	TextCreate((TextRef) WoodCreate(), \
X					WoodApply)
X
Xtypedef char Wood;
X
Xextern Wood *WoodCreate();
Xextern void WoodApply();
X
X#endif /* WOOD_H */
END_OF_FILE
if test 839 -ne `wc -c <'libray/libtext/wood.h'`; then
    echo shar: \"'libray/libtext/wood.h'\" unpacked with wrong size!
fi
# end of 'libray/libtext/wood.h'
fi
if test ! -d 'libshade' ; then
    echo shar: Creating directory \"'libshade'\"
    mkdir 'libshade'
fi
if test -f 'libshade/builtin.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libshade/builtin.h'\"
else
echo shar: Extracting \"'libshade/builtin.h'\" \(826 characters\)
sed "s/^X//" >'libshade/builtin.h' <<'END_OF_FILE'
X/*
X * builtin.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X * 
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: builtin.h,v 4.0 91/07/17 14:45:09 kolb Exp Locker: kolb $
X *
X * $Log:	builtin.h,v $
X * Revision 4.0  91/07/17  14:45:09  kolb
X * Initial version.
X * 
X */
X#ifndef BUILTIN_H
X#define BUILTIN_H
X
Xextern Float	SumExpr(), DiffExpr(), MultExpr(), DivideExpr(), ModExpr(), 
X		NegateExpr(), LinearTime();
X
X#endif /* BUILTIN_H */
END_OF_FILE
if test 826 -ne `wc -c <'libshade/builtin.h'`; then
    echo shar: \"'libshade/builtin.h'\" unpacked with wrong size!
fi
# end of 'libshade/builtin.h'
fi
if test -f 'libshade/rayshade.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'libshade/rayshade.h'\"
else
echo shar: Extracting \"'libshade/rayshade.h'\" \(774 characters\)
sed "s/^X//" >'libshade/rayshade.h' <<'END_OF_FILE'
X/*
X * rayshade.h
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: rayshade.h,v 4.0 91/07/17 14:47:16 kolb Exp Locker: kolb $
X *
X * $Log:	rayshade.h,v $
X * Revision 4.0  91/07/17  14:47:16  kolb
X * Initial version.
X * 
X */
X#ifndef RAYSHADE_H
X#define RAYSHADE_H
X
X#include "libobj/geom.h"
X#include "funcdefs.h"
X
X#endif /* RAYSHADE_H */
END_OF_FILE
if test 774 -ne `wc -c <'libshade/rayshade.h'`; then
    echo shar: \"'libshade/rayshade.h'\" unpacked with wrong size!
fi
# end of 'libshade/rayshade.h'
fi
if test -f 'patchlevel.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'patchlevel.h'\"
else
echo shar: Extracting \"'patchlevel.h'\" \(21 characters\)
sed "s/^X//" >'patchlevel.h' <<'END_OF_FILE'
X#define PATCHLEVEL 6
END_OF_FILE
if test 21 -ne `wc -c <'patchlevel.h'`; then
    echo shar: \"'patchlevel.h'\" unpacked with wrong size!
fi
# end of 'patchlevel.h'
fi
if test ! -d 'raypaint' ; then
    echo shar: Creating directory \"'raypaint'\"
    mkdir 'raypaint'
fi
if test -f 'raypaint/version.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'raypaint/version.c'\"
else
echo shar: Extracting \"'raypaint/version.c'\" \(852 characters\)
sed "s/^X//" >'raypaint/version.c' <<'END_OF_FILE'
X/*
X * version.c
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: version.c,v 4.0 91/07/17 17:37:17 kolb Exp Locker: kolb $
X *
X * $Log:	version.c,v $
X * Revision 4.0  91/07/17  17:37:17  kolb
X * Initial version.
X * 
X */
X#include "rayshade.h"
X#include "patchlevel.h"
X#include "stats.h"
X
Xvoid
XVersionPrint()
X{
X	extern char rcsid[];
X
X	fprintf(Stats.fstats,
X		"raypaint: %s\nPatch level %d\n", rcsid, PATCHLEVEL);
X}
END_OF_FILE
if test 852 -ne `wc -c <'raypaint/version.c'`; then
    echo shar: \"'raypaint/version.c'\" unpacked with wrong size!
fi
# end of 'raypaint/version.c'
fi
if test ! -d 'rayshade' ; then
    echo shar: Creating directory \"'rayshade'\"
    mkdir 'rayshade'
fi
if test -f 'rayshade/version.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rayshade/version.c'\"
else
echo shar: Extracting \"'rayshade/version.c'\" \(852 characters\)
sed "s/^X//" >'rayshade/version.c' <<'END_OF_FILE'
X/*
X * version.c
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: version.c,v 4.0 91/07/17 14:52:08 kolb Exp Locker: kolb $
X *
X * $Log:	version.c,v $
X * Revision 4.0  91/07/17  14:52:08  kolb
X * Initial version.
X * 
X */
X#include "rayshade.h"
X#include "patchlevel.h"
X#include "stats.h"
X
Xvoid
XVersionPrint()
X{
X	extern char rcsid[];
X
X	fprintf(Stats.fstats,
X		"rayshade: %s\nPatch level %d\n", rcsid, PATCHLEVEL);
X}
END_OF_FILE
if test 852 -ne `wc -c <'rayshade/version.c'`; then
    echo shar: \"'rayshade/version.c'\" unpacked with wrong size!
fi
# end of 'rayshade/version.c'
fi
if test ! -d 'rayview' ; then
    echo shar: Creating directory \"'rayview'\"
    mkdir 'rayview'
fi
if test -f 'rayview/README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rayview/README'\"
else
echo shar: Extracting \"'rayview/README'\" \(595 characters\)
sed "s/^X//" >'rayview/README' <<'END_OF_FILE'
XRayview reads a rayshade input file and opens a graphics window into
Xwhich images are rendered using GL (SGI / RS6000) library calls.
X
XSupport is provided for most rayshade primitives and light sources.
XSupport for CSG is limited to drawing the bounding boxes of those
Xobjects used in each CSG object.
X
XRayview is intended to be an example of the kind of application program
Xthat can be written using the rayshade libraries.  You are encouraged
Xto improve or otherwise modify rayview to suit your needs.
X
XTo compile, edit the Makefile, set GRAPHICSLIB and SPHERELIB appropriately,
Xand run make.
END_OF_FILE
if test 595 -ne `wc -c <'rayview/README'`; then
    echo shar: \"'rayview/README'\" unpacked with wrong size!
fi
# end of 'rayview/README'
fi
if test -f 'rayview/version.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rayview/version.c'\"
else
echo shar: Extracting \"'rayview/version.c'\" \(851 characters\)
sed "s/^X//" >'rayview/version.c' <<'END_OF_FILE'
X/*
X * version.c
X *
X * Copyright (C) 1989, 1991, Craig E. Kolb
X * All rights reserved.
X *
X * This software may be freely copied, modified, and redistributed
X * provided that this copyright notice is preserved on all copies.
X *
X * You may not distribute this software, in whole or in part, as part of
X * any commercial product without the express consent of the authors.
X *
X * There is no warranty or other guarantee of fitness of this software
X * for any purpose.  It is provided solely "as is".
X *
X * $Id: version.c,v 4.0 91/07/17 14:55:52 kolb Exp Locker: kolb $
X *
X * $Log:	version.c,v $
X * Revision 4.0  91/07/17  14:55:52  kolb
X * Initial version.
X * 
X */
X#include "rayshade.h"
X#include "patchlevel.h"
X#include "stats.h"
X
Xvoid
XVersionPrint()
X{
X	extern char rcsid[];
X
X	fprintf(Stats.fstats,
X		"rayview: %s\nPatch level %d\n", rcsid, PATCHLEVEL);
X}
END_OF_FILE
if test 851 -ne `wc -c <'rayview/version.c'`; then
    echo shar: \"'rayview/version.c'\" unpacked with wrong size!
fi
# end of 'rayview/version.c'
fi
echo shar: End of archive 1 \(of 19\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 19 archives.
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
Modified: Wed Dec 11 17:00:00 1996 GMT
Page accessed 1314 times since Sat Apr 17 21:59:29 1999 GMT