Realistic Ray Tracing  book cover
2nd Edition

Realistic Ray Tracing



ISBN 9781568814612
Published December 19, 2008 by A K Peters/CRC Press
235 Pages

FREE Standard Shipping
USD $69.95

Prices & shipping based on shipping country


Preview

Book Description

Concentrating on the "nuts and bolts" of writing ray tracing programs, this new and revised edition emphasizes practical and implementation issues and takes the reader through all the details needed to write a modern rendering system. Most importantly, the book adds many C++ code segments, and adds new details to provide the reader with a better intuitive understanding of ray tracing algorithms.

Table of Contents

Getting Started

Code Optimization

RGB Colors

Images

Vectors

Orthonormal Bases and Frames

Dynamic Length Arrays

Random Number Generator

C++ Code

RGB Class

Image Class

Vector3 Class

Orthonormal Basis Class

Dynamic Array Class

Random Number Generator

Notes

Ray—Object Intersections

Parametric lines

General Ray—Object Intersections

Implicit Surfaces

Parametric surfaces

Ray—Sphere Intersection

Ray—Triangle Intersection

More Than One Object

C++ Code

Ray Class

Shape Classes

Notes

A Simple Ray Tracer

A Single Sample Ray Tracer

Multisampling

Sampling Methods

Filtering Methods

C++ Code

Single Sample Orthogonal Viewing Ray Tracer

Sample Class

Notes

Viewing

Axis-aligned viewing

Setting View Parameters

Thin-lens cameras

Motion Blur

Multidimensional sampling

C++ Code

Camera Class

Dynamic Sphere Class

Notes

Solid Texture Mapping

Stripe Textures

Solid Noise

Turbulence

C++ Code

Solid Noise Class

Texture Class

Noise Texture Class

Simple Texture Class

Marble Texture Class

Notes

Image Texture Mapping

C++ code

2D Texture Class

UVSphere Class

Notes

Triangle Meshes

C++ Code

Vertex Classes

Mesh Class

Mesh Triangle

Notes

Instancing

Transformation Matrices

Using Transformation Matrices

Intersecting Rays with Transformed Objects

Lattices

C++ Code

Matrix Library

Shape Instance Class

Notes

Bounding Volume Hierarchies

Hierarchical Bounding Boxes

Efficient Ray-Box Intersection

C++ Code

New Ray Class

Axis-Aligned Bounding Box Class

Partitioning routine

Bounding Volume Hierarchy

Notes

Monte Carlo Integration

Integrals

Continuous Probability

One-Dimensional Continuous Probability Density Functions

One-Dimensional Expected Value

Multi-Dimensional Random Variables

Estimated Means

Monte Carlo Integration

Choosing Random Points

Function Inversion

Notes

Radiometry

Photons

Spectral energy

Power

Irradiance

Radiance

Deriving Other Radiometric Quantities from Radiance

BRDF

Directional Hemispherical Reflectance

Ideal Diffuse BRDF

Transport Equation

Notes

Path Tracing

Luminaires

Monte Carlo Solution to Light Transport

Lambertian Environments

Specular Reflection

Imperfect Specular Reflection

Smooth Dielectrics

Specular-Diffuse Surfaces

Image Display

C++ Code

Material Class

Diffuse Material Class

Phong Metal Material Class

Diffuse-Specular Material Class

Dielectric Material Class

Notes

Explicit Direct Lighting

Direct Lighting in a Path Tracer

Sampling a Spherical Luminaries

Direct Lighting from Many Luminaries

Choosing the Weights

C++ Code

Parallelogram Class

Random Point Functions

Notes

Photon Mapping

Sending Photons

Using the Photon Map

Indirect Use of the Photon Map

Notes

Participating Media

Transport in Participating Media

Direct Lighting

Indirect Lighting

Data for Media

Notes

Going Further

...
View More