Computer Graphics - John Hughes, Andries van Dam, Morgan McGuire, David Sklar, James Foley

Computer Graphics

Principles and Practice
Buch | Hardcover
1264 Seiten
2013 | 3rd edition
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-39952-6 (ISBN)
119,95 inkl. MwSt
Computer Graphics: Principles and Practice, Third Edition, remains the most authoritative introduction to the field. The first edition, the original “Foley and van Dam,” helped to define computer graphics and how it could be taught. The second edition became an even more comprehensive resource for practitioners and students alike. This third edition has been completely rewritten to provide detailed and up-to-date coverage of key concepts, algorithms, technologies, and applications.

 

The authors explain the principles, as well as the mathematics, underlying computer graphics–knowledge that is essential for successful work both now and in the future. Early chapters show how to create 2D and 3D pictures right away, supporting experimentation. Later chapters, covering a broad range of topics, demonstrate more sophisticated approaches. Sections on current computer graphics practice show how to apply given principles in common situations, such as how to approximate an ideal solution on available hardware, or how to represent a data structure more efficiently. Topics are reinforced by exercises, program­ming problems, and hands-on projects.

 

This revised edition features



New coverage of the rendering equation, GPU architecture considerations, and importance- sampling in physically based rendering
An emphasis on modern approaches, as in a new chapter on probability theory for use in Monte-Carlo rendering
Implementations of GPU shaders, software rendering, and graphics-intensive 3D interfaces
3D real-time graphics platforms–their design goals and trade-offs–including new mobile and browser platforms
Programming and debugging approaches unique to graphics development 

The text and hundreds of figures are presented in full color throughout the book. Programs are written in C++, C#, WPF, or pseudocode–whichever language is most effective for a given example. Source code and figures from the book, testbed programs, and additional content will be available from the authors' website (cgpp.net) or the publisher's website  (informit.com/title/9780321399526). Instructor resources will be available from the publisher. The wealth of information in this book makes it the essential resource for anyone working in or studying any aspect of computer graphics.

John F. Hughes is a Professor of Computer Science at Brown University. His primary research is in computer graphics, particularly those aspects of graphics involving substantial mathematics.   Andries van Dam is the Thomas J. Watson, Jr. University Professor of Technology and Education, and Professor of Computer Science at Brown University. Andy’s research includes work on computer graphics, hypermedia systems, post-WIMP user interfaces, including immersive virtual reality and pen- and touch-computing, and educational software.   Morgan McGuire is an Associate Professor of Computer Science at Williams College. He's contributed as an industry consultant to products including the Marvel Ultimate Alliance and Titan Quest video game series, the E Ink display used in the Amazon Kindle, and NVIDIA GPUs.   David F. Sklar is a visualization engineer at Vizify.com, working on algorithms for presenting animated infographics on computing devices across a wide range of form factors.   James D. Foley is a professor and holds the Fleming Chair in the College of Computing at Georgia Institute of Technology. He has also held faculty positions at the University of North Carolina at Chapel Hill and The George Washington University, as well as management positions at Mitsubishi Electric Research.   Steven K. Feiner is a Professor of Computer Science at Columbia University, where he directs the Computer Graphics and User Interfaces Lab and co-directs the Columbia Vision and Graphics Center. His research addresses 3D user interfaces, augmented reality, wearable computing, and many topics at the intersection of human-computer interaction and computer graphics.   Kurt Akeley is Chief Technology Officer at Lytro, Inc. Kurt is a cofounder of Silicon Graphics (later SGI), where he led the development of a sequence of high-end graphics systems, including RealityEngine, and also led the design and standardization of the OpenGL graphics system.

Preface xxxv

About the Authors xlv

 

Chapter 1: Introduction 1

 

Graphics is a broad field; to understand it, you need information from perception, physics, mathematics, and engineering. Building a graphics application entails user-interface work, some amount of modeling (i.e., making a representation of a shape), and rendering (the making of pictures of shapes). Rendering is often done via a “pipeline” of operations; one can use this pipeline without understanding every detail to make many useful programs. But if we want to render things accurately, we need to start from a physical understanding of light. Knowing just a few properties of light prepares us to make a first approximate renderer.

 

1.1 An Introduction to Computer Graphics 1

1.2 A Brief History 7

1.3 An Illuminating Example 9

1.4 Goals, Resources, and Appropriate Abstractions 10

1.5 Some Numbers and Orders of Magnitude in Graphics 12

1.6 The Graphics Pipeline 14

1.7 Relationship of Graphics to Art, Design, and Perception 19

1.8 Basic Graphics Systems 20

1.9 Polygon Drawing As a Black Box 23

1.10 Interaction in Graphics Systems 23

1.11 Different Kinds of Graphics Applications 24

1.12 Different Kinds of Graphics Packages 25

1.13 Building Blocks for Realistic Rendering: A Brief Overview 26

1.14 Learning Computer Graphics 31

 

Chapter 2: Introduction to 2D Graphics Using WPF 35

 

A graphics platform acts as the intermediary between the application and the underlying graphics hardware, providing a layer of abstraction to shield the programmer from the details of driving the graphics processor. As CPUs and graphics peripherals have increased in speed and memory capabilities, the feature sets of graphics platforms have evolved to harness new hardware features and to shoulder more of the application development burden. After a brief overview of the evolution of 2D platforms, we explore a modern package (Windows Presentation Foundation), showing how to construct an animated 2D scene by creating and manipulating a simple hierarchical model. WPF’s declarative XML-based syntax, and the basic techniques of scene specification, will carry over to the presentation of WPF’s 3D support in Chapter 6.

 

2.1 Introduction 35

2.2 Overview of the 2D Graphics Pipeline 36

2.3 The Evolution of 2D Graphics Platforms 37

2.4 Specifying a 2D Scene Using WPF 41

2.5 Dynamics in 2D Graphics Using WPF 55

2.6 Supporting a Variety of Form Factors 58

2.7 Discussion and Further Reading 59

 

Chapter 3: An Ancient Renderer Made Modern 61

 

We describe a software implementation of an idea shown by Dürer. Doing so lets us create a perspective rendering of a cube, and introduces the notions of transforming meshes by transforming vertices, clipping, and multiple coordinate systems. We also encounter the need for visible surface determination and for lighting computations.

Erscheint lt. Verlag 1.8.2013
Verlagsort New Jersey
Sprache englisch
Maße 211 x 256 mm
Gewicht 2292 g
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
ISBN-10 0-321-39952-8 / 0321399528
ISBN-13 978-0-321-39952-6 / 9780321399526
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Das Handbuch für Webentwickler

von Philip Ackermann

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90
Grundlagen und praktische Anwendungen von Transpondern, kontaktlosen …

von Klaus Finkenzeller

Buch (2023)
Hanser (Verlag)
89,99
das umfassende Handbuch

von Marc Marburger

Buch | Hardcover (2024)
Rheinwerk (Verlag)
49,90