Book description
Drawing on an impressive roster of experts in the field, Fundamentals of Computer Graphics, Fourth Edition offers an ideal resource for computer course curricula as well as a user-friendly personal or professional reference.
Focusing on geometric intuition, the book gives the necessary information for understanding how images get onto the screen by using the complementary approaches of ray tracing and rasterization. It covers topics common to an introductory course, such as sampling theory, texture mapping, spatial data structure, and splines. It also includes a number of contributed chapters from authors known for their expertise and clear way of explaining concepts.
Highlights of the Fourth Edition Include:
- Updated coverage of existing topics
- Major updates and improvements to several chapters, including texture mapping, graphics hardware, signal processing, and data structures
- A text now printed entirely in four-color to enhance illustrative figures of concepts
The fourth edition of Fundamentals of Computer Graphics continues to provide an outstanding and comprehensive introduction to basic computer graphic technology and theory. It retains an informal and intuitive style while improving precision, consistency, and completeness of material, allowing aspiring and experienced graphics programmers to better understand and apply foundational principles to the development of efficient code in creating film, game, or web designs.
Key Features
- Provides a thorough treatment of basic and advanced topics in current graphics algorithms
- Explains core principles intuitively, with numerous examples and pseudo-code
- Gives updated coverage of the graphics pipeline, signal processing, texture mapping, graphics hardware, reflection models, and curves and surfaces
- Uses color images to give more illustrative power to concepts
Table of contents
- Preliminaries
- Preface
- Chapter 1 Introduction
-
Chapter 2 Miscellaneous Math
- 2.1 Sets and Mappings
- 2.2 Solving Quadratic Equations
- 2.3 Trigonometry
- 2.4 Vectors
- 2.5 Curves and Surfaces
- 2.6 Linear Interpolation
- 2.7 Triangles
- Frequently Asked Questions
- Notes
- Exercises
-
- Figure 2.1
- Figure 2.2
- Figure 2.3
- Figure 2.4
- Figure 2.5
- Figure 2.6
- Figure 2.7
- Figure 2.8
- Figure 2.9
- Figure 2.10
- Figure 2.11
- Figure 2.12
- Figure 2.13
- Figure 2.14
- Figure 2.15
- Figure 2.16
- Figure 2.17
- Figure 2.18
- Figure 2.19
- Figure 2.20
- Figure 2.21
- Figure 2.22
- Figure 2.23
- Figure 2.24
- Figure 2.25
- Figure 2.26
- Figure 2.27
- Figure 2.28
- Figure 2.29
- Figure 2.30
- Figure 2.31
- Figure 2.32
- Figure 2.33
- Figure 2.34
- Figure 2.35
- Figure 2.36
- Figure 2.37
- Figure 2.38
- Figure 2.39
- Figure 2.40
- Chapter 3 Raster Images
- Chapter 4 Ray Tracing
- Chapter 5 Linear Algebra
- Chapter 6 Transformation Matrices
- Chapter 7 Viewing
- Chapter 8 The Graphics Pipeline
-
Chapter 9 Signal Processing
- 9.1 Digital Audio: Sampling in 1D
- 9.2 Convolution
- 9.3 Convolution Filters
- 9.4 Signal Processing for Images
- 9.5 Sampling Theory
- Exercises
-
- Figure 9.1
- Figure 9.2
- Figure 9.3
- Figure 9.4
- Figure 9.5
- Figure 9.6
- Figure 9.7
- Figure 9.8
- Figure 9.9
- Figure 9.10
- Figure 9.11
- Figure 9.12
- Figure 9.13
- Figure 9.14
- Figure 9.15
- Figure 9.16
- Figure 9.17
- Figure 9.18
- Figure 9.19
- Figure 9.20
- Figure 9.21
- Figure 9.22
- Figure 9.23
- Figure 9.24
- Figure 9.25
- Figure 9.26
- Figure 9.27
- Figure 9.28
- Figure 9.29
- Figure 9.30
- Figure 9.31
- Figure 9.32
- Figure 9.33
- Figure 9.34
- Figure 9.35
- Figure 9.36
- Figure 9.37
- Figure 9.38
- Figure 9.39
- Figure 9.40
- Figure 9.41
- Figure 9.42
- Figure 9.43
- Figure 9.44
- Figure 9.45
- Figure 9.46
- Figure 9.47
- Figure 9.48
- Figure 9.49
- Figure 9.50
- Figure 9.51
- Figure 9.52
- Figure 9.53
- Chapter 10 Surface Shading
-
Chapter 11 Texture Mapping
- 11.1 Looking Up Texture Values
- 11.2 Texture Coordinate Functions
- 11.3 Antialiasing Texture Lookups
- 11.4 Applications of Texture Mapping
- 11.5 Procedural 3D Textures
- Frequently Asked Questions
- Notes
- Exercises
-
- Figure 11.1
- Figure 11.2
- Figure 11.3
- Figure 11.4
- Figure 11.5
- Figure 11.6
- Figure 11.7
- Figure 11.8
- Figure 11.9
- Figure 11.10
- Figure 11.11
- Figure 11.12
- Figure 11.13
- Figure 11.14
- Figure 11.15
- Figure 11.16
- Figure 11.17
- Figure 11.18
- Figure 11.19
- Figure 11.20
- Figure 11.21
- Figure 11.22
- Figure 11.23
- Figure 11.24
- Figure 11.25
- Figure 11.26
- Figure 11.27
- Figure 11.28
- Figure 11.29
- Figure 11.30
-
Chapter 12 Data Structures for Graphics
- 12.1 Triangle Meshes
- 12.2 Scene Graphs
- 12.3 Spatial Data Structures
- 12.4 BSP Trees for Visibility
- 12.5 Tiling Multidimensional Arrays
- Frequently Asked Questions
- Notes
- Exercises
-
- Figure 12.1
- Figure 12.2
- Figure 12.3
- Figure 12.4
- Figure 12.5
- Figure 12.6
- Figure 12.7
- Figure 12.8
- Figure 12.9
- Figure 12.10
- Figure 12.11
- Figure 12.12
- Figure 12.13
- Figure 12.14
- Figure 12.15
- Figure 12.16
- Figure 12.17
- Figure 12.18
- Figure 12.19
- Figure 12.20
- Figure 12.21
- Figure 12.22
- Figure 12.23
- Figure 12.24
- Figure 12.25
- Figure 12.26
- Figure 12.27
- Figure 12.28
- Figure 12.29
- Figure 12.30
- Figure 12.31
- Figure 12.32
- Figure 12.33
- Figure 12.34
- Figure 12.35
- Figure 12.36
- Figure 12.37
- Figure 12.38
- Figure 12.39
- Figure 12.40
- Figure 12.41
- Figure 12.42
- Chapter 13 More Ray Tracing
- Chapter 14 Sampling
-
Chapter 15 Curves
- 15.1 Curves
- 15.2 Curve Properties
- 15.3 Polynomial Pieces
- 15.4 Putting Pieces Together
- 15.5 Cubics
- 15.6 Approximating Curves
- 15.7 Summary
- Notes
-
- Figure 15.1
- Figure 15.2
- Figure 15.3
- Figure 15.4
- Figure 15.5
- Figure 15.6
- Figure 15.7
- Figure 15.8
- Figure 15.9
- Figure 15.10
- Figure 15.11
- Figure 15.12
- Figure 15.13
- Figure 15.14
- Figure 15.15
- Figure 15.16
- Figure 15.17
- Figure 15.18
- Figure 15.19
- Figure 15.20
- Figure 15.21
- Figure 15.22
- Figure 15.23
- Figure 15.24
- Figure 15.25
-
Chapter 16 Computer Animation
- 16.1 Principles of Animation
- 16.2 Keyframing
- 16.3 Deformations
- 16.4 Character Animation
- 16.5 Physics-Based Animation
- 16.6 Procedural Techniques
- 16.7 Groups of Objects
- Notes
-
- Figure 16.1
- Figure 16.2
- Figure 16.3
- Figure 16.4
- Figure 16.5
- Figure 16.6
- Figure 16.7
- Figure 16.8
- Figure 16.9
- Figure 16.10
- Figure 16.11
- Figure 16.12
- Figure 16.13
- Figure 16.14
- Figure 16.15
- Figure 16.16
- Figure 16.17
- Figure 16.18
- Figure 16.19
- Figure 16.20
- Figure 16.21
- Figure 16.22
- Figure 16.23
- Figure 16.24
- Figure 16.25
- Figure 16.26
- Figure 16.27
- Figure 16.28
- Figure 16.29
-
Chapter 17 Using Graphics Hardware
- 17.1 Hardware Overview
- 17.2 What Is Graphics Hardware
- 17.3 Heterogeneous Multiprocessing
- 17.4 Graphics Hardware Programming: Buffers, State, and Shaders
- 17.5 State Machine
- 17.6 Basic OpenGL Application Layout
- 17.7 Geometry
- 17.8 A First Look at Shaders
- 17.9 Vertex Buffer Objects
- 17.10 Vertex Array Objects
- 17.11 Transformation Matrices
- 17.12 Shading with Per-Vertex Attributes
- 17.13 Shading in the Fragment Processor
- 17.14 Meshes and Instancing
- 17.15 Texture Objects
- 17.16 Object-Oriented Design for Graphics Hardware Programming
- 17.17 Continued Learning
- Frequently Asked Questions
- Notes
- Exercises
- Chapter 18 Light
- Chapter 19 Color
-
Chapter 20 Visual Perception
- 20.1 Vision Science
- 20.2 Visual Sensitivity
- 20.3 Spatial Vision
- 20.4 Objects, Locations, and Events
- 20.5 Picture Perception
-
- Figure 20.1
- Figure 20.2
- Figure 20.3
- Figure 20.4
- Figure 20.5
- Figure 20.6
- Figure 20.7
- Figure 20.8
- Figure 20.9
- Figure 20.10
- Figure 20.11
- Figure 20.12
- Figure 20.13
- Figure 20.14
- Figure 20.15
- Figure 20.16
- Figure 20.17
- Figure 20.18
- Figure 20.19
- Figure 20.20
- Figure 20.21
- Figure 20.22
- Figure 20.23
- Figure 20.24
- Figure 20.25
- Figure 20.26
- Figure 20.27
- Figure 20.28
- Figure 20.29
- Figure 20.30
- Figure 20.31
- Figure 20.32
- Figure 20.33
- Figure 20.34
- Figure 20.35
- Figure 20.36
- Figure 20.37
- Figure 20.38
- Figure 20.39
- Figure 20.40
- Figure 20.41
- Figure 20.42
- Figure 20.43
- Figure 20.44
- Figure 20.45
- Figure 20.46
-
Chapter 21 Tone Reproduction
- 21.1 Classification
- 21.2 Dynamic Range
- 21.3 Color
- 21.4 Image Formation
- 21.5 Frequency-Based Operators
- 21.6 Gradient-Domain Operators
- 21.7 Spatial Operators
- 21.8 Division
- 21.9 Sigmoids
- 21.10 Other Approaches
- 21.11 Night Tonemapping
- 21.12 Discussion
-
- Figure 21.1
- Figure 21.2
- Figure 21.3
- Figure 21.4
- Figure 21.5
- Figure 21.6
- Figure 21.7
- Figure 21.8
- Figure 21.9
- Figure 21.10
- Figure 21.11
- Figure 21.12
- Figure 21.13
- Figure 21.14
- Figure 21.15
- Figure 21.16
- Figure 21.17
- Figure 21.18
- Figure 21.19
- Figure 21.20
- Figure 21.21
- Figure 21.22
- Figure 21.23
- Figure 21.24
- Figure 21.25
- Figure 21.26
- Figure 21.27
- Figure 21.28
- Figure 21.29
- Figure 21.30
- Figure 21.31
-
Chapter 22 Implicit Modeling
- 22.1 Implicit Functions, Skeletal Primitives, and Summation Blending
- 22.2 Rendering
- 22.3 Space Partitioning
- 22.4 More on Blending
- 22.5 Constructive Solid Geometry
- 22.6 Warping
- 22.7 Precise Contact Modeling
- 22.8 The BlobTree
- 22.9 Interactive Implicit Modeling Systems
- Exercises
-
- Figure 22.1
- Figure 22.2
- Figure 22.3
- Figure 22.4
- Figure 22.5
- Figure 22.6
- Figure 22.7
- Figure 22.8
- Figure 22.9
- Figure 22.10
- Figure 22.11
- Figure 22.12
- Figure 22.13
- Figure 22.14
- Figure 22.15
- Figure 22.16
- Figure 22.17
- Figure 22.18
- Figure 22.19
- Figure 22.20
- Figure 22.21
- Figure 22.22
- Figure 22.23
- Figure 22.24
- Figure 22.25
- Figure 22.26
- Figure 22.27
- Figure 22.28
- Figure 22.29
- Figure 22.30
- Figure 22.31
- Chapter 23 Global Illumination
- Chapter 24 Reflection Models
- Chapter 25 Computer Graphics in Games
-
Chapter 26 Visualization
- 26.1 Background
- 26.2 Data Types
- 26.3 Human-Centered Design Process
- 26.4 Visual Encoding Principles
- 26.5 Interaction Principles
- 26.6 Composite and Adjacent Views
- 26.7 Data Reduction
- 26.8 Examples
-
- Figure 26.1
- Figure 26.2
- Figure 26.3
- Figure 26.4
- Figure 26.5
- Figure 26.6
- Figure 26.7
- Figure 26.8
- Figure 26.9
- Figure 26.10
- Figure 26.11
- Figure 26.12
- Figure 26.13
- Figure 26.14
- Figure 26.15
- Figure 26.16
- Figure 26.17
- Figure 26.18
- Figure 26.19
- Figure 26.20
- Figure 26.21
- Figure 26.22
- Figure 26.23
- Figure 26.24
- Figure 26.25
- Figure 26.26
- References
Product information
- Title: Fundamentals of Computer Graphics, 4th Edition
- Author(s):
- Release date: October 2018
- Publisher(s): A K Peters/CRC Press
- ISBN: 9781315360201
You might also like
book
Fundamentals of Computer Graphics, 3rd Edition
With contributions by Michael Ashikhmin, Michael Gleicher, Naty Hoffman, Garrett Johnson, Tamara Munzner, Erik Reinhard, Kelvin …
book
Fundamentals of Computer Graphics, 5th Edition
Drawing on an impressive roster of experts in the field, Fundamentals of Computer Graphics, Fifth Edition …
book
Introduction to Computer Graphics
This text shows step by step how to implement computer graphics concepts and theory with WebGL …
book
Digital Design and Computer Architecture, 2nd Edition
Digital Design and Computer Architecture takes a unique and modern approach to digital design. Beginning with …