Computer Graphics: From Pixels to Programmable Graphics Hardware

6,462.00

ISBN: 9781439867303
Author/Editor: Alexey Boreskov

Publisher: CRC Press

Year: 2014

1 in stock (can be backordered)

SKU: ABD-CRC-2535 Category:

Description

Complete Coverage of the Current Practice of Computer Graphics
Computer Graphics: From Pixels to Programmable Graphics Hardware explores all major areas of modern computer graphics, starting from basic mathematics and algorithms and concluding with OpenGL and real-time graphics. It gives students a firm foundation in today? high-performance graphics.

Up-to-Date Techniques, Algorithms, and API
The book includes mathematical background on vectors and matrices as well as quaternions, splines, curves, and surfaces. It presents geometrical algorithms in 2D and 3D for spatial data structures using large data sets. Although the book is mainly based on OpenGL 3.3, it also covers tessellation in OpenGL 4.0, contains an overview of OpenGL ES 2.0, and discusses the new WebGL, which allows students to use OpenGL with shaders directly in their browser. In addition, the authors describe a variety of special effects, including procedural modeling and texturing, fractals, and non-photorealistic rendering. They also explain the fundamentals of the dominant language (OpenCL) and platform (CUDA) of GPGPUs.

Web Resource
On the book? CRC Press web page, students can download many ready-to-use examples of C++ code demonstrating various effects. C++ wrappers for basic OpenGL entities, such as textures and programs, are also provided.

In-Depth Guidance on a Programmable Graphics Pipeline
Requiring only basic knowledge of analytic geometry, linear algebra, and C++, this text guides students through the OpenGL pipeline. Using one consistent example, it leads them step by step from simple rendering to animation to lighting and bumpmapping.

Key Features

Covers the main aspects of modern computer graphics
Explains how to create various special effects using OpenGL
Describes a wide range of current topics, such as tessellation, spherical harmonics, and geometric shaders
Contains practical exercises and examples as well as numerous illustrations, including several color images
Offers full, cross-platform source code and examples on the book? CRC Press web page
Figure slides available upon qualifying course adoption

Additional information

Weight 0.93 kg

Product Properties

Year of Publication

2014

Table of Contents

Introduction: Basic Concepts Coordinate spaces, transformations Graphics pipeline Working with the windowing system Colors. Color models Raster algorithms Hidden surface removal Lighting models and shading Transforms in 2D Vectors and matrices Transforms in 2D Basic linear transformations Homogeneous coordinates Geometric Algorithms in 2D Line from two points Classification of a point relative to the line Classification of a circle relative to the line Classification of an axis-aligned bounding box (AABB) relative to the line Computing the area of triangle and polygon Intersection of two lines Intersection of two line segments Closest point on the line to the given point Distance from point to line segment Checking whether the given polygon is convex Check whether the point lies inside the given polygon Clipping line segment to a convex polygon, Cyrus-Beck algorithm Clipping a polygon: Sutherland-Hodgman algorithm Clipping a polygon to a convex polygon Barycentric coordinates Transformations in 3D, Projections, Quaternions 3D vectors and matrices. Dot and vector (cross) products Linear transformations-scale, reflection, rotation, and shear Reflection relative to a plane Rotation around an arbitrary vector (direction) Euler transformation Translation, affine transformation and homogeneous coordinates Rigid-body transformation Normal transformation Projections Coordinate systems in 3D, translations between different coordinate systems Quaternions: Representation of orientation in 3D using quaternions, quaternion interpolation Basic Raster Algorithms Raster grid, connectivity of raster grid, 4-connectivity, and 8-connectivity Bresenheim's line algorithm Bresenheim's circle algorithm Triangle filling Flood fill algorithm Color and Color Models CIEXY Z color space RGB color space CMY and CMYK color spaces HSV and HSL color spaces Gamma correction Y uv and Y CBCR color spaces Perceptually uniform color spaces, L*u*v* and L*a*b* color spaces sRGB color space Basic freeglut and GLEW for OpenGL Rendering freeglut initialization Window creation Processing events Using the GLEW library Wrapping freeglut in a C++ class Hidden Surface Removal Basic notions Ray casting z-buffer Hierarchical z-buffer Priority algorithms Portals Potentially visible sets (PVS), computing PVS via portals Hardware occlusion queries and their usage Modern OpenGL: The Beginning History of OpenGL Main concepts of OpenGL Programmable pipeline Our first OpenGL program First OpenGL program using C++ classes Parameter interpolation Matrix operations Rotating the object by mouse Working with meshes Working with textures Instancing Framebuffer object and rendering into a texture Point sprite in OpenGL Working with Large 2D/3D Data Sets Bounding volumes Regular grids Nested (hierarchical) grids Quad-trees and Oct-trees kD-tree Binary space partitioning (BSP) tree Bounding volume hierarchy (BVH) R-trees Mixed structures Curves and Surfaces: Geometric Modeling Representation of curves and surfaces Elements of differential geometry, tangent space, curvature Bezier and Hermite curves and surfaces Interpolation Splines Surfaces of revolution Subdivision of curves and surfaces Basics of Animation Coordinates interpolation Orientation interpolation Key-frame animation Skeletal animation Path following Lighting Models Diffuse (Lambert) model Phong model Blinn-Phong model Ward isotropic model Minnaert lighting Lommel-Seeliger lighting Rim lighting Distance attenuation Reflection, Fresnel coefficient, and its approximations Strauss lighting model Anisotropic lighting Bidirectional reflection distribution function (BRDF) Oren-Nayar model Cook-Torrance model Ashikhmin-Shirley model Image-based lighting (IBL) Spherical harmonics and their usage for lighting Advanced OpenGL Implementation of lighting models Geometry shaders Transform feedback Multiple render targets (MRT) Uniform blocks and uniform buffers Tessellation OpenGL ES 2 WebGL GPU Image Processing Sampling, aliasing, filters Sepia effect Effects based on color transformations Edge detect filters Emboss filter Blur filters, Gaussian blur, separable filters Old-film effect Sharpness filter Image denoising, bilateral filter Special Effects in OpenGL Reflections Volumetric/layered fog Billboards, particle systems, soft particles Bumpmapping Reflection and refraction, environment mapping Fur rendering Parallax, relief and cone step mapping Sky rendering, Perez all-weather model Screen-space ambient occlusion (SSAO) Modeling depth of field High dynamic range (HDR) rendering Realistic water rendering Deferred rendering Light prepass rendering Ambient cubes Reflective shadow maps Splatting indirect illumination Basics of GPGPU What is GPGPU Basics of OpenCL Basics of CUDA Basics of linear algebra in OpenCL OpenCL-OpenGL interoperability Elements of Procedural Texturing and Modeling Fractals, Mandelbrot, and Julia sets Fractal mountains L-systems Perlin noise, turbulence, fBm Modeling marble, water, clouds with Perlin noise Cellular textures Non-Photorealistic Rendering Cartoon rendering Extended cartoon rendering Gooch lighting model Watercolor rendering Bibliography

Author

Alexey Boreskov

ISBN/ISSN

9781439867303

Binding

Hardback

Edition

1

Publisher

CRC Press

Reviews

There are no reviews yet.

Be the first to review “Computer Graphics: From Pixels to Programmable Graphics Hardware”