For this project, I decided to concentrate on generating a caustic.
Step 1 - Calibrating the camera
We took a picture of the color checker outdoors at noon and indoors
under an ordinary bulb. Then we calculated the average R, G and B over
each of the 24 squares. Using a 24 box basis we tried to come out with
an approximation for 3 functions which when integrated with a spectrum
would give R, G and B respectively. We used the data for light from Brian
Smith's web page.
Inspite of several attempts we didn't get reasonable functions.
Step 2 - modeling
The mirror was modeled as an octagonal metal piece with 99% reflectance
covered with glass with cross - section as shown below:-
The bulb was approximated as a sphere
Step 3 - rendering
To generate the caustic 4096 * 900 rays were shot from the light source
to the mirror. The rays would reflect/refract and hit the the color checker
at a points say (u,v). The intensity of the ray hitting the checker
was ,as in direct lighting, directly proportional to the cosine of the
angles the ray makes with the light source and the color checker and inversely
proportional to the square of the distance traversed by the rays from the
light source to the color checker. An intensity map was thus generated
for the color checker.
No indirect lighting was used because there are only 2 objects in the
scene. This speeded up the rendering greatly. With 49 samples pre pixel
and 49 samples for the light, the rendering (including generating the image
map) took a little over 3 hours All images are gamma corrected with
a factor of 1.7
The images still require plenty of work:-