By: Christopher Jenkins
For my project, I wanted to focus on Photon Mapping using volume photon mapping and participating media. I wanted to create the effect of light passing through a cloudy medium and I thought that a lighthouse would be the best way to do this. I had to create the model from hand using 3ds Max so that it would have interesting effects on how the light shown. A spotlight was also created to give a brighter and more focuses light.
The first step is was to model the lighthouse. I went through a couple versions before settling on this one:
Next, I had to get the spotlight working. I modified a point light so that it would only send out light in a certain angle as well as in the direction. A simple Boolean check is used to see if a light is actually a spotlight or not. Here is the spotlight through the lighthouse:
The final part, and most time consuming and challenging, was the photon mapping. Using the given base code, creating the photons was not much of a problem. The real challenge was getting it to work for volume photon mapping. Also, since I was using a spotlight and only sending light in one direction, I had to modify the way the random directions were created for the photons so that they would only shoot in the direction of the spotlight. I used 100,000 photons with 50 samples in the final version:
Putting it all together gave me the final image: