ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) (06/26/87)
[ REPLACE THIS LINE WITH ANOTHER ONE EXACTLY LIKE IT ]
Sometime back, I made a request for information regarding easy-to-
understand graphics reference works that I could build my CG knowledge on.
I got a great many responses, which are summarized below. Most of the
responses directed me to Foley/Van Dam's "Principles of Interactive Computer
Graphics," which I had already scanned, and concluded that it was basically
an update to Newman/Sproull.
Another work frequently referred to was "Procedural Elements for
Computer Graphics," which I will investigate.
My thanks to those on the net who took the time to provide me with
this information.
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape ihnp4!ptsfa -\
\_ -_ Bike shrunk by popular demand, dual ---> !{well,unicom}!ewhac
O----^o But it's still the only way to fly. hplabs / (pronounced "AE-wack")
"Work FOR? I don't work FOR anybody! I'm just having fun." -- The Doctor
_-_-_-_-_-_-_ Summary follows. All paths relative to the WELL. _-_-_-_-_-_-_
From hoptoad!farren Fri Jun 12 07:30:30 1987
One book I've found to be excellent, as far as it goes, is Foley & Van Dam,
Fundamentals of Interactive Computer Graphics. As the title implies, they
are mostly concerned with interactive techniques, so a lot of the compute-
intensive stuff isn't covered in depth, but what they do cover, they cover
well. Chapter headings include Representation of 3d shapes, The Quest for
Visual Realism, Algorithms for Removing Hidden Edges and Surfaces, Shading
Models, and Intensity and Color. Perhaps worth checking out.
Mike
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!lll-tis!elxsi!len Fri Jun 12 12:43:55 1987
[ Editor's note: This, in my humble opinion, was the best response I
received. ]
Leo --
Here's a response from another naive person!
I, too, read Newman & Sproul way back when, and have recently become
involved in more graphics. There is a wonderful reference (partially
because it is accompanied by a large amount of software) which you
can not buy, but which you can get free of charge. Here is the
README from the Ballistic Research Laboratory CAD Package "A
Solid Modeling System and Ray-Tracing Benchmark Distribution
Package" which contains instructions for obtaining the package.
I have deleted some 630 lines from the README for brevity. You
will get the whole thing on the tape from them, as well as a
hardcopy document.
If you get the package, you can be writing programs as soon as you
have absorbed the hardcopy and scanned the software.
Good luck in your efforts.
-- Len
.nf
.ce 7
BALLISTIC RESEARCH LABORATORY
.sp
SOLID MODELING SYSTEM
and
RAY-TRACING BENCHMARK
.sp
DISTRIBUTION PACKAGE
Release 1.20
(13-Feb-87)
.fi
.sp
.IP "DISTRIBUTION DETAILS"
.sp
.nf
To obtain a copy of the distribution, you should send the authors:
.sp
1) Enough magnetic tape for 15 Mbytes of data. For 9-track 1/2 inch magtape,
specify density (800, 1600, or 6250). Silicon Graphics and SUN tape
cartridges can also be accommodated. Specify TAR or CPIO, and blocksize.
.sp
2) A letter indicating:
.sp
-- Who you are
-- What the BRL CAD package is to be used for
-- Equipment and operating system(s) you plan on using
-- That you agree to the conditions listed below.
.sp
The software is distributed free of charge with the following conditions:
.sp
1. The BRL CAD package source files won't be passed on to third parties. If
someone wants them, have them contact BRL. We need to know who has
what, and what it is being used for.
.sp
2. BRL will be credited should the software be used in a product or written
about in any publication. BRL will be referenced as the original
source in any advertisements.
.sp
3. BRL assumes no legal responsibility for source code and its subsequent
use. No warranty is expressed or implied.
.sp
4. If any bugs or problems are found they will be reported back to BRL.
.fi
.sp
You will own full rights to any databases or images you create with this
package.
.sp
To obtain authorization for use at additional sites, or for permission
to use this work as part of a commercial package, please contact the
authors at the address below.
.sp
For non-US sites, an extra step is required. You must send your letter
and tape to your Ambassador to the United States in Washington DC, and
have them forwarded to BRL through official channels.
.sp
.IP CONTENTS
.sp
What you have here is a collection of software which includes:
.sp
.nf
.ta 0.5i 1.5i
libsysv Some System-V compatibility routines
mged A solid-model editor
librt A solid-model ray-tracing library
rt A ray-tracing lighting model, for rendering
db Several solid-model databases, in ASCII form
conv ASCII/binary database converters
bench Scripts to drive the RT benchmark
pix Reference images for the RT benchmark, in ASCII form
libpkg A "message-passing" interface to TCP network links
libfb A generic frame-buffer library
rfbd TCP server for remote frame-buffer access
libtermio A library to handle terminal mode setting
libplot3 A public-domain 2-D and 3-D UNIX-Plot library
librle A Run-Length-Encoding library (originally from UofUtah)
util Zillions of image-handling utilities, as tools
fbed Frame-buffer image editor
vdeck Convert mged models to GIFT-format card decks.
dmdfb libfb support for layers in Teletype 5620 DMD terminal
[ Mega-stuff deleted. Ed. ]
Best Wishes,
-Mike Muuss
.sp
Leader, Advanced Computer Systems Team
U.S. Army Ballistic Research Laboratory
APG, MD. 21005-5066
USA
.sp
ArpaNet: <Mike @ BRL.ARPA>
.sp
Commercial (301)-278-6678
AUTOVON 298-6678
FTS 939-6678
.KE
.fi
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!lll-tis!ames!ames-pioneer.arpa!eugene Mon Jun 15 06:40:04 1987
Well, you can attend my ACM/SIGGRAPH meetings and learn a little bit,
I suggest the June meeting which was posted and wait until our Oct.
meeting on 3-D/stereo systems for next. We don't meet during the
national (July/Aug) meeting, and Sept is more artistically oriented.
While you don't need a PhD in math, you do need to understand matrix
algebra because it is the fastest, most flexible way to program
graphics. You should also learn to do it in a system of homogeneous
coordinates. N&S is okay, you just have to bone down a bit. Foley and
van Dam is only a little better.
--eugene miya
Bay Area ACM/SIGGRAPH
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!ihnp4!hoqax!twb Mon Jun 15 07:50:35 1987
Take a look at:
Fundamentals of Interactive Computer Graphics
J.D. Foley and A. van Dam
Addison-Wesley 1984
Tom Beattie
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!seismo!utah-cs!peterson Tue Jun 16 05:34:42 1987
Try "Procedural Elements for Computer Graphics" by David F. Rodgers.
It's style is somewhat old fasioned (e.g., flowcharts) but it's the
closest thing I've seen to a cookbook.
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!harvard!UDEL.EDU!thomson Tue Jun 16 06:35:58 1987
Sorry if this message gets to you twice, but I've been wrestling with our
mailer program. I figure its better you get two copies, than none.
-------
Try looking at a recent issue of AmigaWorld for info on ray tracing-- the cover
has a ray-traced image of a robot juggler. There was an article describing the
techniques of ray-tracing in detail, along with generic C routines to implement
the major portion of a ray tracer. The Amiga specific routines have been left
out, but most everything you will need (aside from machine specific routines to
set a pixel, etc.) is in the magazine. For continuous information about CG and
the related algorithms, you might consider joining one of the professional
societies like the IEEE (Institute for Electrical and Electronics Engineers),
SIGGRAPH (the Special Interest Group of the ACM [Association of Computing
Machinery] on Graphics), or the NCGA (National Computer Graphicsw Association).
I belong to the IEEE and receive their publication Computer Graphics and
Applications; I believe it to be one of the best sources of current information
on algorithms and methods available. [Not to mention the fact that they have
some of the best pictures!] If you're interested in the IEEE, or the NCGA I
have addresses for both and can e-mail. Rich Thomson
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From hplabs!rutgers!mtune!io!zapp!carlos Tue Jun 16 15:30:39 1987
>From your Amiga stuff I've seen so far, you will be a dangerous man if you
learn much more about graphics! Anyway, I have a favorite book that I would
like to recommend. It is called "Procedural Elements for Computer Graphics",
and I think it is by Roberts. It is by far the most USEFUL of all computer
graphics books I have seen (and I own most of them). No one book I know of
will cover everything you want, but this book discusses perspective
transformations, polygon clipping, rendering algorithms (certainly scan-line
algorithms, I am not 100% sure about ray-tracing, I don't have it here at
work) and much more. The best part is, generally gives multiple solutions
to a problem, with discussion of the trade-offs and advantages of each. Then
to top it off is a pseudo-code (or Pascal?) implementation of the algorithm.
This book is head and shoulders above Newman/Sproull and Foley/VanDam (which
you may also want to check out, it is also a fine book, but more similar
to N/S) in its level of sophistication. NOT heavy math, but it assumes a
competent programmer is reading it. Check it out in a bookstore, but I'll
bet you find it useful.
Hope this is helpful, I'll check out my library tonight and see if I have
any others you might like (anything for a fellow Amigan!) and if I do I'll
mail you again.
Carlos Smith
...harvard!umb!ileaf!carlos
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From lll-lcc!lll-tis!ames!hao!noao!arizona!naucse!csi Wed Jun 17 03:52:24 1987
Hello Doc
I am a computer science major at Northern Arizona University.
I am also very interested in computer graphics and have taken as many
classes as possible at this university. My suggestions for a beginners
book that our first semester graphics class uses is ;
Title: Computer Graphics
Auther: HEARNS
Publisher: Prentas Hall inc.
This text will take you through all the matrix manipulations,
hidden line algorithms and a few other odds and ends. For a more
advanced book I would suggest;
Title: Fundamentals of Interactive Computer Graphics
Author: J.D Foley, A. Van Dam
Publisher: Addison-Wesley Publishing Company
This is a little more dificult book to read but covers a greater
majority of subjects, such as scan line. I have not come across a good
book for fractals and ray tracing. I would truely appreciate it if
would forward your other recomendations on, so I also may learn a little.
Good luck in you hunt,
Chris Iams (csi)
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
From hplabs!rutgers!liberty!swatsun!swarthmore!rice Thu Jun 18 00:27:41 1987
For excellent explanations of hidden surface removal, shading, and
some basic ray-tracing, try _Procedural Elements for Computer Graphics_
by David F. Rogers, McGraw Hill 1985. It describes everything quite well,
and gives worked examples. It also has a good bibliography. For octree and
quadtree stuff, I've only seen journal articles, in publications like
IEEE Computer Graphics & Applications. They're used to store objects compactly
and to solve various object-intersection calculations. There's an
interesting article in IEEE CG&A by Andrew Glassner about ray-tracing with
space divided into an octree to speed up intersection calculations, and another
by Fujimoto and Iwata which accomplishes the same thing faster by dividing space
into equal-sized cubes. There was also an article in IEEE CG&A about rendering
objects defined directly in terms of octrees (a simple recursive routine),
written by someone at Raster Technologies whose name I don't recall.
Fractal surfaces are mentioned in passing in Roberts. The more-or-
less original article on fractal mountains is Fournier, Fussell, and
Carpenter in the June 1982 issue of ACM Transactions. James Kajiya wrote an
an article on ray-tracing fractals and other procedurally-defined objects in
Siggraph 1983 and ACM Transactions on Graphics July 1983. Mandelbrot's book
has some nice pictures, but is utterly inscrutable. In any event, even if
you have the math to create the terrain, Mandelbrot won't help you render it.
I've seen a few articles on camera motion, but since I don't
really have the resources to animate, I haven't paid much attention. There
are plenty of interesting articles on animation related things like motion blur
and anti-aliasing, though.
In general, for fancy stuff like ray-tracing, its still necessary to
follow the periodical literature; no book really has everything. If you can
get your hands on them, read Siggraph conference proceedings as far back as
possible, ACM Transactions on Graphics, and IEEE CG&A. I've learned most of
what I know from them (not that I'm an expert, just a lowly undergrad...).
Don't bother with Foley & VanDam; it's pricey and, like Newman & Sproull,
gets very vague about anything advanced. It also contains some superseded
information.
I don't have many references here with me, so write me if you need
more details on any of these sources.
Good luck with your quest!
Regards,
Dan Rice