CONTENTS IN DETAIL

ACKNOWLEDGMENTS

INTRODUCTION

Who This Book Is For

What This Book Covers

Why Read This Book?

About This Book

About the Author

1
INTRODUCTORY CONCEPTS

The Canvas

Coordinate Systems

Color Models

Subtractive Color Model

Additive Color Model

Forget the Details

Color Depth and Representation

Color Manipulation

The Scene

Summary

PART I
RAYTRACING

2
BASIC RAYTRACING

Rendering a Swiss Landscape

Basic Assumptions

Canvas to Viewport

Tracing Rays

The Ray Equation

The Sphere Equation

Ray Meets Sphere

Rendering our First Spheres

Summary

3
LIGHT

Simplifying Assumptions

Light Sources

Point Lights

Directional Lights

Ambient Light

Illumination of a Single Point

Diffuse Reflection

Modeling Diffuse Reflection

The Diffuse Reflection Equation

Sphere Normals

Rendering with Diffuse Reflection

Specular Reflection

Modeling Specular Reflection

The Specular Reflection Term

The Full Illumination Equation

Rendering with Specular Reflections

Summary

4
SHADOWS AND REFLECTIONS

Shadows

Understanding Shadows

Rendering with Shadows

Reflections

Mirrors and Reflection

Rendering with Reflections

Summary

5
EXTENDING THE RAYTRACER

Arbitrary Camera Positioning

Performance Optimizations

Parallelization

Caching Immutable Values

Shadow Optimizations

Spatial Structures

Subsampling

Supporting Other Primitives

Constructive Solid Geometry

Transparency

Refraction

Supersampling

Summary

PART II
RASTERIZATION

6
LINES

Describing Lines

Drawing Lines

Drawing Lines with Any Slope

The Linear Interpolation Function

Summary

7
FILLED TRIANGLES

Drawing Wireframe Triangles

Drawing Filled Triangles

Summary

8
SHADED TRIANGLES

Defining Our Problem

Computing Edge Shading

Computing Interior Shading

Summary

9
PERSPECTIVE PROJECTION

Basic Assumptions

Finding P’

The Projection Equation

Properties of the Projection Equation

Projecting Our First 3D Object

Summary

10
DESCRIBING AND RENDERING A SCENE

Representing a Cube

Models and Instances

Model Transform

Camera Transform

The Transform Matrix

Homogeneous Coordinates

Homogeneous Rotation Matrix

Homogeneous Scale Matrix

Homogeneous Translation Matrix

Homogeneous Projection Matrix

Homogeneous Viewport-to-Canvas Matrix

The Transform Matrix Revisited

Summary

11
CLIPPING

An Overview of the Clipping Process

The Clipping Volume

Clipping the Scene Against a Plane

Defining the Clipping Planes

Clipping Whole Objects

Clipping Triangles

Segment-Plane Intersection

Clipping Pseudocode

Clipping in the Rendering Pipeline

Summary

12
HIDDEN SURFACE REMOVAL

Rendering Solid Objects

Painter’s Algorithm

Depth Buffering

Using 1/Z instead of Z

Back Face Culling

Classifying Triangles

Summary

13
SHADING

Shading vs. Illumination

Flat Shading

Gouraud Shading

Phong Shading

Summary

14
TEXTURES

Painting a Crate

Bilinear Filtering

Mipmapping

Trilinear Filtering

Summary

15
EXTENDING THE RASTERIZER

Normal Mapping

Environment Mapping

Shadows

Stencil Shadows

Shadow Mapping

Summary

AFTERWORD

APPENDIX: LINEAR ALGEBRA

Points

Vectors

Representing Vectors

Vector Magnitude

Point and Vector Operations

Subtracting Points

Adding a Point and a Vector

Adding Vectors

Multiplying a Vector by a Number

Multiplying Vectors

Matrices

Matrix Operations

Adding Matrices

Multiplying a Matrix by a Number

Multiplying Matrices

Multiplying a Matrix and a Vector

INDEX

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.87.156