Fundamentals of Computer Graphics: 4th Edition (Hardback) book cover

Fundamentals of Computer Graphics

4th Edition

By Steve Marschner, Peter Shirley

A K Peters/CRC Press

734 pages | 541 Color Illus.

Purchasing Options:$ = USD
Hardback: 9781482229394
pub: 2015-12-18
SAVE ~$26.00
$130.00
$104.00
x
eBook (VitalSource) : 9781315372198
pub: 2018-10-24
from $65.00


FREE Standard Shipping!

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

Introduction

Graphics Areas

Major Applications

Graphics APIs

Graphics Pipeline

Numerical Issues

Efficiency

Designing and Coding Graphics Programs

Miscellaneous Math

Sets and Mappings

Solving Quadratic Equations

Trigonometry

Vectors

Curves and Surfaces

Linear Interpolation

Triangles

Raster Images

Raster Devices

Images, Pixels, and Geometry

RGB Color

Alpha Compositing

Ray Tracing

The Basic Ray-Tracing Algorithm

Perspective

Computing Viewing Rays

Ray-Object Intersection

Shading

A Ray-Tracing Program

Shadows

Ideal Specular Reflection

Historical Notes

Linear Algebra

Determinants

Matrices

Computing with Matrices and Determinants

Eigenvalues and Matrix Diagonalization

Transformation Matrices

2D Linear Transformations

3D Linear Transformations

Translation and Affine Transformations

Inverses of Transformation Matrices

Coordinate Transformations

Viewing

Viewing Transformations

Projective Transformations

Perspective Projection

Some Properties of the Perspective Transform

Field-of-View

The Graphics Pipeline

Rasterization

Operations Before and After Rasterization

Simple Antialiasing

Culling Primitives for Efficiency

Signal Processing

Digital Audio: Sampling in 1D

Convolution

Convolution Filters

Signal Processing for Images

Sampling Theory

Surface Shading

Diffuse Shading

Phong Shading

Artistic Shading

Texture Mapping

Looking Up Texture Values

Texture Coordinate Functions

Antialiasing Texture Lookups

Applications of Texture Mapping

Procedural 3D Textures

Data Structures for Graphics

Triangle Meshes

Scene Graphs

Spatial Data Structures

BSP Trees for Visibility

Tiling Multidimensional Arrays

More Ray Tracing

Transparency and Refraction

Instancing

Constructive Solid Geometry

Distribution Ray Tracing

Sampling

Integration

Continuous Probability

Monte Carlo Integration

Choosing Random Points

Curves

Curves

Curve Properties

Polynomial Pieces

Putting Pieces Together

Cubics

Approximating Curves

Summary

Computer Animation

Principles of Animation

Keyframing

Deformations

Character Animation

Physics-Based Animation

Procedural Techniques

Groups of Objects

Using Graphics Hardware

Hardware Overview

What Is Graphics Hardware

Heterogeneous Multiprocessing

Graphics Hardware Programming: Buffers, State, and Shaders

State Machine

Basic OpenGL Application Layout

Geometry

A First Look at Shaders

Vertex Buffer Objects

Vertex Array Objects

Transformation Matrices

Shading with Per-Vertex Attributes

Shading in the Fragment Processor

Meshes and Instancing

Texture Objects

Object-Oriented Design for Graphics Hardware Programming

Continued Learning

Light

Radiometry

Transport Equation

Photometry

Color

Colorimetry

Color Spaces

Chromatic Adaptation

Color Appearance

Visual Perception

Vision Science

Visual Sensitivity

Spatial Vision

Objects, Locations, and Events

Picture Perception

Tone Reproduction

Classification

Dynamic Range

Color

Image Formation

Frequency-Based Operators

Gradient-Domain Operators

Spatial Operators

Division

Sigmoids

Other Approaches

Night Tonemapping

Discussion

Implicit Modeling

Implicit Functions, Skeletal Primitives, and Summation Blending

Rendering

Space Partitioning

More on Blending

Constructive Solid Geometry

Warping

Precise Contact Modeling

The Blob Tree

Interactive Implicit Modeling Systems

Global Illumination

Particle Tracing for Lambertian Scenes

Path Tracing

Accurate Direct Lighting

Reflection Models

Real-World Materials

Implementing Reflection Models

Specular Reflection Models

Smooth-Layered Model

Rough-Layered Model

Computer Graphics in Games

Platforms

Limited Resources

Optimization Techniques

Game Types

The Game Production Process

Visualization

Background

Data Types

Human-Centered Design Process

Visual Encoding Principles

Interaction Principles

Composite and Adjacent Views

Data Reduction

Examples

About the Authors

Steve Marschner, Cornell University, Ithaca, New York, USA

Peter Shirley, Purity LLC

Subject Categories

BISAC Subject Codes/Headings:
COM012000
COMPUTERS / Computer Graphics
COM012040
COMPUTERS / Programming / Games