jeanphi wrote:Instead of open coding the contributions queueing, couldn't the eye sampler be adapted to not increase the sample count if it doesn't need to? That would allow some fancier samplers later on.
Honestly I'm totally lost on what the film are really doing.
Currently SPPM needs:
- A normalization per pass for the eye buffer (or per sample per pixel)
- A normalization per photon for the photon buffer (or per AddSample())
Also, as usuall, now that everything works, I have broken SPPM again

, Some patchs had been pushed which reduce a bit memory usage, but perhaps at the code of some speed (it replace a cached Point by a pointer indirection read).
Also, I have started a new branch, ppm_proba, using the "PPM: a probabilistic approach" to radius reduction. I seams interesting because :
- it reduce cache trashing because of the removal of atomics
- because photon statistics disapears, HitPoint size is now 64 byte, which fits perfectly in the CPU cache

(But without any speed improvement, I'm surprised...)
- More generally, I'd like to test this approach for a while. I discussed a lot at siggraph asia and EGSR with people involved in sppm research and everybody seams to think the Knaus approach is a better way of handling PPM. I'll try to merge both branch regular (or perhaps make this a runtime parameter). If some people want to test it, please.
Please also note that with the fixes pushed yesterday we make a big step forward in SPPM. Every result you may have seen previously may be totally different (I'm thinking about the firefly issue, or the ringing issue in the MP3 scene, or AMCMC not working well).