ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1918 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Computer Graphics, Principles and Practice (2nd ed. in C)
Foley et al
0 201 84840 6
Gareth Blower
graphics; reference
Appeared in:
Practically all 'hot' graphics cards these days claim to use Gouraud shading, so the first thing I looked up in the index was 'Gouraud'. After being re-directed to 'Shading, Gouraud' (don't you hate indexes which do this?), I found a fairly full and intelligible explanation. The next test was an old favourite - line-drawing algorithms. The relevant section in this book seems to be much more comprehensive than that in its predecessor (Fundamentals of Interactive Computer Graphics), although the authors still don't explain that the mathematically best-fit pixels don't necessarily produce the best-looking line. Most other topics in both 2D and 3D graphics are covered well, although one glaring omission is contour plotting. I would also have liked to see at least an overview of image compression techniques. Too much of the book is devoted to HCI topics covered more competently elsewhere and a whole chapter is dedicated to SPHIGS, a graphics package I think few have heard of or will be interested in.

Since this is the 'Second Edition in C', what's the code like? Below average and very sparse. The preface is honest enough to explain that the original edition had Pascal examples and that the C in this edition is a translation of those examples. The Pascal must have been poor, too! Graphics primitives should probably be written in assembler anyway. The examples are best treated as pseudocode for the algorithms.

Finally, although this edition is dated 1995, the latest reference is 1990. Any book like this is by its nature a snapshot, but 8 years may have brought significant advances. Better leave it on the reference shelves in the library, where it belongs.