Introduction to Computer Graphics: A Practical Learning Approach

Introduction to Computer Graphics: A Practical Learning Approach

By: Fabio Ganovelli (author), Sumanta Pattanaik (author), Massimiliano Corsini (author), Marco Di Benedetto (author)Hardback

1 - 2 weeks availability


Teach Your Students How to Create a Graphics Application Introduction to Computer Graphics: A Practical Learning Approach guides students in developing their own interactive graphics application. The authors show step by step how to implement computer graphics concepts and theory using the EnvyMyCar (NVMC) framework as a consistent example throughout the text. They use the WebGL graphics API to develop NVMC, a simple, interactive car racing game. Each chapter focuses on a particular computer graphics aspect, such as 3D modeling and lighting. The authors help students understand how to handle 3D geometric transformations, texturing, complex lighting effects, and more. This practical approach leads students to draw the elements and effects needed to ultimately create a visually pleasing car racing game. The code is available at

Create a review


What Computer Graphics Is Applications Domains and Areas of Computer Graphics Color and Images Algorithms to Create a Raster Image from a 3D Scene The First Steps The Application Programming Interface The WebGL Rasterization-Based Pipeline Programming the Rendering Pipeline: Your First Rendering WebGL Supporting Libraries Meet NVMC How a 3D Model Is Represented Polygonal meshes Implicit surfaces Parametric surfaces Voxels Constructive solid geometry (CSG) Subdivision surfaces Data Structures for Polygon Meshes The First Code: Making and Showing Simple Primitives Self-exercises Geometric Transformations Geometric entities Basic geometric transformations Affine transformations Frames Rotations in Three Dimensions Viewing transformations Transformations in the Pipeline Upgrade your client: Our First 3D Client The Code Handling the Transformations Matrices with a Matrix Stack Manipulating the View and the Objects Upgrade your client: Create the Observer Camera Self-exercises Turning Vertices into Pixels Rasterization Hidden Surface Removal From Fragments to Pixels Clipping Culling Lighting and Shading Light and Matter Interaction Radiometry in a Nutshell Reectance and BRDF The Rendering Equation Evaluate the Rendering Equation Computing the Surface Normal Light Source Types Phong Illumination Model Shading Techniques Advanced Reection Models Self-Exercises Texturing Introduction: Do We Need Texture Mapping? Basic Concepts Texture Filtering: from per-Fragment Texture Coordinates to per-Fragment Color Perspective Correct Interpolation: From per-Vertex to per-Fragment Texture Coordinates Upgrade Your Client: Add Textures to the Terrain, Street and Building Upgrade Your Client: Add the Rear Mirror Texture Coordinates Generation and Environment Mapping Texture Mapping for Adding Detail to Geometry Notes on Mesh Parametrization 3D Textures and Their Use Self-Exercises Shadows The Shadow Phenomenon Shadow Mapping Upgrade Your Client: Add Shadows Shadow Mapping Artifacts and Limitations Shadow Volumes Self-Exercises Image-Based Impostors Sprites Billboarding Ray-Traced Impostors Self-Exercises Advanced Techniques Image Processing Ambient Occlusion Deferred Shading Particle Systems Self-Exercises Global Illumination Ray Tracing Multi-Pass Algorithms Appendix A: NVMC Class Appendix B: Properties of Vector Products Bibliography Index

Product Details

  • publication date: 10/10/2014
  • ISBN13: 9781439852798
  • Format: Hardback
  • Number Of Pages: 422
  • ID: 9781439852798
  • weight: 839
  • ISBN10: 1439852790

Delivery Information

  • Saver Delivery: Yes
  • 1st Class Delivery: Yes
  • Courier Delivery: Yes
  • Store Delivery: Yes

Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly