CS 7650: Realistic Image Synthesis

Thiago Ize

Dielectrics

I decided to stick with the philosophy of the class and keep things simple. When a ray hits a dielectric, it will probabilistically choose whether to refract or reflect based on the Fresnel reflectance (unless total internal reflectance occurs). This, along with how I organize things, makes the Dielectric code very simple since I don't have to worry about casting two rays, having exponential ray growth, etc...
Keeping things simple also lets me do interesting things like having dielectrics inside of other dielectrics without much extra work. (That is of course assuming the below images are correct; I don't really have any intuition for what that should look like. Let me know if you think they are wrong.)

The following images were made using 10,000 rays per pixel.
Left outer sphere has a constant 1.2 index of refraction. Right is a constant 1.5 Left outer sphere's index of refraction linearly varies from 1.0 to 1.2. The right linearly varies from 1.0 to 3.0
Simple Spheres constant index of refraction varying index of refraction
Spheres with smaller spheres inside whose index of refraction is that of the other big spheres (i.e. I have two index of refractions that I combine in different ways among the 4 spheres) constant index of refraction for multiple spheres varying index of refraction for multiple spheres