Record Display for the EPA National Library Catalog
RECORD NUMBER: 2 OF 7Main Title  Computer graphics : principles and practice /  

Author  Hughes, John F.,  
Publisher  AddisonWesley,  
Year Published  2014  
OCLC Number  828142648  
ISBN  9780321399526; 0321399528  
Subjects  Computer graphics ; Computers and IT ; Computergrafik ; Datorgrafik  
Holdings 


Edition  Third edition.  
Collation  xlvii, 1209 pages : illustrations (colour) ; 26 cm  
Notes  Revised edition of: Computer graphics / James D. Foley [and others].  2nd ed.  Reading, Mass. : AddisonWesley, 1995. Includes bibliographical references and index. 

Contents Notes  Introduction : A brief history ; An illuminating example ; Goals, resources, and appropriate abstractions ; Some numbers and orders of magnitude in graphics ; The graphics pipeline ; Relationship of graphics to art, design, and perception ; Basic graphics systems ; Polygon drawing as a black box ; Interaction in graphics systems ; Different kinds of graphics applications ; Different kinds of graphics packages ; Building blocks for realistic rendering: a brief overview ; Learning computer graphics  Introduction to 2D graphics using WPF : Overview of the 2D graphics pipeline ; The evolution of 2D graphics platforms ; Specifying a 2D scene using WPF ; Dynamics in 2D graphics using WPF ; Supporting a variety of form factors  An ancient renderer made modern : A Dèurer woodcut ; Visibility ; Implementation ; The program ; Limitations  A 2D graphics test bed : Details of the test bed ; The CÄ code ; Animation ; Interaction ; An application of the test bed  An introduction to human visual perception : The visual system ; The eye ; Constancy and its influences ; Continuation ; Shadows  Introduction to fixedfunction 3D graphics and hierarchical modeling : Introducing mesh and lighting specification ; Curvedsurface representation and rendering ; Surface texture in WPF ; The WPF reflectance model ; Hierarchical modeling using a scene graph  Essential mathematics and the geometry of 2space and 3space : Notation ; Sets ; Functions ; Coordinates ; Operations on coordinates ; Intersections of lines ; Intersections, more generally ; Triangles ; Polygons  A simple way to describe shape in 2D and 3D : "Meshes" in 2D: polylines ; Meshes in 3D  Functions on meshes : code for barycentric interpolation ; Limitations of piecewise linear extension ; Smoother extensions ; Functions multiply defined at vertices ; Application: texture mapping  Transformations in two dimensions : Five examples ; Important facts about transformations ; Translation ; Points and vectors again ; Why use 3 x 3 matrices instead of a matrix and a vector? ; Windowing transformations ; Building 3D transformations Another example of building a 2D transformation ; Coordinate frames ; Application: rendering from a scene graph ; Transforming vectors and covectors ; More general transformations ; Transformations versus interpolation  Transformations in three dimensions : Rotations ; Comparing representations ; Rotations versus rotation specifications ; Interpolating matrix transformations ; Virtual trackball and arcball  A 2D and 3D transformation library for graphics : Points and vectors ; Transformations ; Specifications of transformations ; Implementation ; Three dimensions ; Associated transformations ; Other structures ; Other approaches  Camera specifications and transformations : A 2D example ; Perspective camera specification ; Building transformations from a view specification ; Camera transformations and the rasterizing renderer pipeline ; Perspective and zvalues ; Camera transformations and the modeling hierarchy ; Orthographic cameras  Standard approximations and representations : Evaluating representations ; Real numbers ; Building blocks of ray optics ; Largescale object geometry ; Distant objects ; Volumetric models ; Scene graphs ; Material models ; Translucency and blending ; Luminaire models  Ray casting and rasterization : Highlevel design overview ; Implementation platform ; A raycasting renderer ; Intermezzo ; Rasterization ; Rendering with a rasterization API ; Performance and optimization  Survey of realtime 3D graphics platforms : The programmer's model: OpenGL compatibility (fixedfunction) profile ; The programmer's model: OpenGL programmable pipeline ; Architectures of graphics applications ; 3D on other platforms  Image representation and manipulation : What is an image? ; Image file formats ; Image compositing ; Other image types ; MIP maps  Images and signal processing : Historical motivation ; Convolution ; Properties of convolution ; Convolutionlike computations ; Reconstruction ; Function classes ; Sampling ; Mathematical considerations ; The Fourier transform: definitions ; The Fourier transform of a function on an interval ; Generalizations to larger intervals and all of R ; Examples of Fourier Transforms ; An approximation of sampling ; Examples involving limits ; The inverse Fourier transform ; Applications ; Reconstruction and band limiting ; Aliasing revisited  Enlarging and shrinking images : Enlarging and image ; Scaling down an image ; Making the algorithms practical ; Finitesupport approximations ; Other image operations and efficiency  Textures and texture mapping : Variations of texturing ; Building tangent vectors from a parameterization ; Codomains for texture maps ; Assigning texture coordinates ; Application examples ; Sampling, aliasing, filtering, and reconstruction ; Texture synthesis. Interaction techniques : User interfaces and computer graphics ; Multitouch interaction for 2D manipulation ; Mousebased object manipulation in 3D ; Mousebased camera manipulation: Unicam ; Choosing the best interface ; Some interface examples  Splines and subdivision curves : Basic polynomial curves ; Fitting a curve segment between two curves: the Hermite curve ; Gluing together curves and the CatmullRom spline ; Cubic Bsplines ; Subdivision curves  Splines and subdivision surfaces : Bézier patches ; CatmullClark subdivision surfaces ; Modeling with subdivision surfaces  Implicit representations of shape : Implicit curves ; Implicit surfaces ; Representing implicit functions ; Other representations of implicit functions ; Conversion to polyhedral meshes ; Conversion from polyhedral meshes to implicits ; Texturing implicit models ; Ray tracing implicit surfaces ; Implicit shapes in animation  Meshes : Mesh topology ; Mesh geometry ; Level of detail ; Mesh applications 1: marching cubes, mesh repair, and mesh improvement ; Mesh applications 2: deformation transfer and triangleorder optimization  Light : The physics of light ; The microscopic view ; The wave nature of light ; Fresnel's law and polarization ; Modeling light as a continuous flow ; Measuring light ; Other measurements ; The derivative approach ; Reflectance  Materials and scattering : Objectlevel scattering ; Surface scattering ; Kinds of scattering ; Empirical and phenomenological models for scattering ; Measured models ; Physical models for specular and diffuse reflection ; Physically based scattering models ; Representation choices ; Criteria for evaluation ; Variations across surfaces ; Suitability for human use ; More complex scattering ; Software interface to material models  Color : Spectral distribution of light ; The phenomenon of color perception and the physiology of the eye ; The perception of color ; Color description ; Conventional color wisdom ; Color perception strengths and weaknesses ; Standard description of colors ; Perceptual color spaces ; Intermezzo ; White ; Encoding of intensity, exponents, and gamma correction ; Describing color ; CMY and CMYK color ; The YIQ color model ; Video standards ; HSV and HLS ; Interpolating color ; Using color in computer graphics  Light transport : Light transport ; A peek ahead ; The rendering equation for general scattering ; Scattering, revisited ; A worked example ; Solving the rendering equation ; The classification of lighttransport paths  Probability and Monte Carlo integration : Numerical integration ; Random variables and randomized algorithms ; Continuum probability, continued ; Importance sampling and integration ; Mixed probabilities  Computing solutions to the rendering equation: theoretical approaches : Approximate solutions of equations ; Method 1: Approximating the equation ; Method 2: Restricting the domain ; Method 3: Using statistical estimators ; Method 4: Bisection ; Other approaches ; The rendering equation, revisited ; What do we need to compute? ; The discretization approach: radiosity ; Separation of transport paths ; Series solution of the rendering equation ; Alternative formulations of light transport ; Approximations of the series solution ; Approximating scattering: spherical harmonics ; Introduction to Monte Carlo approaches ; Tracing paths ; Path tracing and Markov chains ; Photon mapping  Rendering in practice : Representations ; Surface representations and representing BSDFs locally ; Representations of light ; A basic path tracer ; Photon mapping ; Generalizations ; Rendering and debugging  Shaders : The graphics pipeline in several forms ; Historical development ; A simple graphics program with shaders ; A phong shader ; Environment mapping ; Two versions of toon shading ; Basic XToon shading  Expressive rendering : The challenges of expressive rendering ; Marks and strokes ; Perception and salient features ; Geometric curve extraction ; Abstraction  Motion : Motivating examples ; Considerations for rendering ; Representation ; Pose interpolation ; Dynamics ; Remarks on stability in dynamics  Visibility determination : Ray casting ; The depth buffer ; Listpriority algorithms ; Frustum culling and clipping ; Backface culling ; Hierarchical occlusion culling ; Sectorbased conservative visibility ; Partial coverage  Spatial data structures : Programmatic interfaces ; Characterizing data structures ; Overview of kd structures ; List ; Trees ; Grid  Modern graphics hardware " NVIDIA GeForce 9800 GTX ; Architecture and implementation ; Parallelism ; Programmability ; Texture, memory, and latency ; Locality ; Organizational alternatives ; GPUs as compute engines. "Computer Graphics: Principles and Practice, Third Edition, remains ... [an] 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 uptodate coverage of key concepts, algorithms, technologies, and applications. The authors explain the principles, as well as the mathematics, underlying computer graphicsknowledge 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, programming problems, and handson 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 MonteCarlo rendering; implementations of GPU shaders, software rendering, and graphicsintensive 3D interfaces; 3D realtime graphics platformstheir design goals and tradeoffsincluding new mobile and browser platforms; and 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 pseudocodewhichever 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."Publisher's description. 