Raytracing Renderer
Raytracing is a strategy to determine the color of each pixel in an image depicting a 3D scene. For each pixel, a ray is shot from the camera position towards the given point in the scene to find what object is represented by that pixel. More rays are traced from that point to any light sources in the scene, and the color at the point is derived by evaluating the properties of the represented object (such as albedo color, roughness, reflectivity, etc.) and the properties of the light sources.
The below images were generated with the raytracing renderer I wrote in C# for my Image Synthesis class.
(The source textures and normal maps used are not my own)
Shading
Directional lighting
Point lighting
Spot light from above
Area light
Texturing
UV test
Normal map
Normals with albedo color
Normals with albedo texture
Reflection
No normals, low roughness
With normals, medium roughness
With normals, high roughness
Reflected ground plane
Refraction
Refracted primitives
With normal map
Fresnel (refraction & reflection)
Variable Index of Refraction
Glossiness
Low-gloss fresnel
High-gloss fresnel