Updated April 2 at 23:20. Bump mapping is not on the test. Ray tracing what happens at each ray bounce shadow rays to all point lights recursive ray in ideal reflection direction apply Phong to every incoming ray Ray/triangle intersection ray parameterization: p + td plane equation for plane of triangle: n dot x = d Barycentric coordinates p = alpha v1 + beta v2 + gamma v0 for points inside triangle: alpha + beta + gamma = 1 alpha, beta, gamma >= 0 idea that alpha, beta, gamma are the SIGNED areas of sub-triangles Acceleration techniques axis-aligned bounding boxes (AABBs) how to find whether ray intersects AABB octtrees following a ray through an octtree k-d trees how to choose the separating plane: even vs. median vs. SAH SAH algorithm Antialiasing what does aliasing look like how to reduce aliasing jittered sampling Analysis of random sampling what is an estimator and an estimate how to know if an estimator is biased how to analyse the variance of an estimator the effect of variance on the image how stratified sampling can reduce variance Glossy reflections sample multiple rays generate random points on disk average the outgoing light after applying Phong to each ray Shadows hard shadows from point light sources requires only a single ray to test if source is blocked soft shadows from area light sources generate random points on the area source how to generate UNIFORM random points on a triangle (Barycentric coords) Bias in ray tracing weight of ray = factor by which ray's light is attenuated at the eye cut off ray after weight < threshold why this causes bias in the resulting image how to avoid bias with Russian Roulette Volume Rendering Rendering equations exponential attenuation through a volume volume rendering integral discrete volume rendering integral appoximations and discretizations that are made (e.g. delta s, constant tau and C, Taylor series) Algorithms axis-aligned slices with 2D textures viewpoint-aligned slices with 3D textures back-to-front in software front-to-back in software with early termination Transfer functions 1D: tau -> (kd, tau') Surface shading use of emission to fake light reflection Computing C(p) and alpha(p) at position p on ray gradient computation (intermediate, central, Sobel, Zucker-Hummel) use of negative normalized gradient with Phong