
Fixed the contact shadow issue on reflective sphere. Now, its 100% done. 6,236,379 photons stored. 98,717 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 00:01:50. 16 spp min, 64 spp max.

Got the photon artifacting issue resolved in the reflective spheres ground reflection. 6,615,258 photons stored. 101,568 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 00:01:12. 16 spp min, 64 spp max.

HELL YEAH! 10,000,000 photons emitted. 6,614,272 photons stored. 101,540 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 57.2025 sec. 16 spp min, 32 spp max.

Turns out I was doing quite a lot of stuff wrong, including implementing photon mapping as its own renderer. Fixed that and am properly using GenerateSamples for the photon emission now. As a result of these fixes, I am ACTUALLY using final gathering now! Although, my caustics have stopped working. Troublshooting that now. 10,000,000 photons emitted. 6,093,850 photons stored. 103,989 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 1 min 15.7767 sec. Interestingly, my renders without photon mapping take far less time to render....on average, they take about 20-30 seconds.

Used Russian Roulette for all bounces. Final Gathering. 10,000,000 photons emitted. 6,633,196 photons stored. 516,327 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 1.20799 sec.

Tryinig to figure out how to reduce the noise. Final Gathering. 100,000,000 photons emitted. 96,451,740 photons stored. 6,942,025 caustic photons stored. Photon Search Radius: 0.2. Caustic Search Radius: 0.02. Neighbor photons: 100. 2.03236 sec.

Got GI working!! Realized that I was scaling by numPhotons instead of photonMap.NumPhotons. Final Gathering. 10,000,000 photons emitted. 9,114,580 photons stored. 692,412 caustic photons stored. Radius: 0.05. Neighbor photons: 100. 1.34546 sec.

Got caustics!! Final Gathering. 10,000,000 photons emitted. 10,000,000 photons stored. 1,000,000 caustic photons stored. Radius: 0.05. Neighbor photons: 100. 0.252372 sec.

Photon Mapping for direct and indirect illumination. 10,000,000 photons emitted. 10,000,000 photons stored. 1,000,000 caustic photons stored. Radius: 0.05. Neighbor photons: 100. 0.428926 sec. FINALLY! I was forgetting to normalize the normal.

Photon Mapping for direct and indirect illumination. 10,000,000 photons emitted. 8,696,677 photons stored. Radius: 0.2. Neighbor photons: 100. 0.501691 sec. GI isnt working yet.

Oh my god!! Finally! Literally crying because I finally got it. Issue was related to gamma.

Photon Mapping for direct and indirect illumination. 10,000,000 photons emitted. 8,697,454 photons stored. Radius: 0.2. Neighbor photons: 100. 0.503172 sec. Decided to continue onto indirect implementation and revisit the darkness of the scene later. I think once thats fixed, the render will look right.

Cool render. Looks like Tron.

Cool render.

Photon Mapping for direct illumination only. 10,000,000 photons emitted. 8,699,176 photons stored. Radius: 0.2. Neighbor photons: 100. 0.312906 sec. Render is still far too dark, but I have been trying to fix it for 5-6 hours now, so I am gonna go sleep now.

Direct illumination with standard raytracing. Min samples: 16. Max samples: 64. Shadow min samples: 1. Shadow max samples: 4. Glossy reflection and refraction samples: 1. GI samples: 1. 6.63821 sec.