Archive for the ‘RayTracing’ Category

Photon Tracing 3

Posted: October 31, 2011 in RayTracing

With and without Caustics.



Photon Tracing 2

Posted: October 31, 2011 in RayTracing

Added Area Lights.


Photon Tracing

Posted: October 31, 2011 in RayTracing

Today I added photon tracing. Its only Caustic photons at the moment, but the improvement in speed and visual quality is much better now, and I’ve still yet to thread the 1st pass photon generation stage. As mental ray does, I only trace photons at geometry in the scene that reflect or refract, to save on wasted caustic photons. This is done by querying for all geometry with a specular type material, retrieving their AABBs and then shooting photons from the lights at these boxes. A lot of geometry really doesnt get bounded very well by AABBs, such as the teapot below, so I also added the option to keep shooting photons until the target count is matched, as opposed to just storing the ones that do hit. This takes a little longer, but it means less fiddling with the multipliers to get descent results.

The images below all use point lights.


Selection Rendering

Posted: October 31, 2011 in RayTracing

Having to re-render the whole frame to see changes got annoying a long time ago. Yet I finally added the ability to only render pixels made by a marquee selection

Final Gather 4

Posted: October 31, 2011 in RayTracing

Added sampling of contours with in the scene to get better irradiance data near edges. Also added AO to the final result to crispen some of the edges that tend to bleed out when using FG.

Final Gather 3

Posted: October 31, 2011 in RayTracing

Update to FG. I decided to use the noisy AO results of computing the FG points after all, its not that bad when I also include the view/ray intersection points. The image below shows this update. The scene is from a Digital Tutors tutorial DVD.

Final Gather 2

Posted: October 31, 2011 in RayTracing

Update to FG. The sample points are now based not only on view ray intersecitons, but also points layed out on the geometry (back face culled). This produces nice results as you get more points in complex areas, and the distribution increases as the rays form more grazing angles to the geometry. There are still some artifacts though, and this is based on the points being uniformly placed, and patterns can be seen in the interpolation. Hopefully some randomness will sort this out. I also tried using ambient occulsion to create a buffer which can be used to distribute points. It worked great, but is just very slow to compute. If I reduce the samples, then a get a more noisy buffer, if I reduce the resolution of the buffer then I get other artifacts showing up. Im still going to play around with it some more and try to reach a good compromise.