Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!husc6!rutgers!sri-spam!ames!lll-lcc!well!ewhac From: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) Newsgroups: comp.graphics Subject: I have been taught... Message-ID: <3404@well.UUCP> Date: Fri, 26-Jun-87 02:36:12 EDT Article-I.D.: well.3404 Posted: Fri Jun 26 02:36:12 1987 Date-Received: Sat, 27-Jun-87 05:31:34 EDT Reply-To: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) Distribution: world Organization: Hole Earth 'Lectronic Loss (or words to that effect) Lines: 315 Summary: Summary of "I Wish to Learn" information request. A bit big. [ 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: .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