Pierre Collet

 

Raytracer

by Pierre Collet - 2014-06-11

Here is gallery of scenes rendered by a Raytracing engine I did during my studies at the University of California San Diego.

Among other features, have implemented:

- Dielectrics materials
- Beer Lambert absorption
- Environnement Mapping
- Texturing
- Perlin Noise
- Negative mapping
- Normal mapping
- Caustics (photon mapping)
- Volumetric scattering
- Terrain generation (Diamond Square and Perlin noise)
- Anti-aliasing
- Depth of field blur
- 3D Model loading
- [Ashikhmin BRDF][Ashikhmin BRDF]


Terrains



Here is the two terrain generation techniques I have implemented. Diamond square on the left definitely feels more realistic than Perlin noise on right. For both of them, the texture is automatically generated depending on the steepness of the terrain.



Caustics & Normal Mapping



This scene shows some normal mapping on multiple materials while also showings some caustics created thanks to photon mapping. What is fascinating to me is the way photons are influenced by the dielectric, colored and normal mapped materials. See the blue caustics patterns behind the blue glass box and funky red one under the glassy sphere? Magnificent! :D



Volumetric Scattering & Negative Texturing



Holes on this box are made with negative texturing allowing rays to pass through its faces with this lovely pattern. This is handy when you want to show some volumetric scattering simulating smoke.



Model loading & Environement Mapping



This scene was supposed to be my dreamy living room. Well, I let you judge. Anyway, it is still a good scene to show some features such as the Environement Mapping and the Model Loading. I am a serious boy, so I have put some glasses (dielectric materials) to make these windows.



Depth of Field Blur





Ashikhmin BRDF



Here is a "An Anisotropic Phong BRDF Model" also called Ashikhmin BRDF. This BRDF is applied on the rectangular parallelepiped and on the sphere respectively with equals parameters and different parameters. Which make the reflection isotropic or anisotropic.