A separate Cycles integrator for caustics
I recently read this post on Blendernation [
blendernation.com/2018/05/10/rendering-caustics-in-blender-using-the-appleseed-render-engine/
] and an old question came back: how to solve the caustics issue in Cycles?
And again my answer was: *
why not having them solved by a different solver?
*
The good old photon mapping or progressive-stochastic still seem to be the faster and most reliable solutions for tackling the job, so why not?
Due to the fact that it simply is not suited for the task, Blender now ships with caustics turned off by default, as to say "
Sorry Dave, I'm afraid I can't do that
".
Right now I can't serve a mockup, but any Yafaray addon can be looked at for example. In my idea the "photon integrator" should work just for producing caustics (and an optional caustic pass) and the settings - as few as possible - should be in the lamp panel turned on when clicking a checkbox named "Cast photons" or "Generate caustics" or the like
6 Comments
It would be very nice to see another integrator for caustics. It would also help for every other kind of more advanced Light Setups, interiors etc.
The most advanced technique for this would probably be Manifold Exploration Path Tracing . Renderman will include it in v22. Video by TwoMinutePapers on this Topic here
Another possibility is VCM (Vertex Connection and Merging) Video here
Brecht already commented about this two years ago here
The simple way can be do this, but under the hood. I'm not programmer, but I thing this can't be so hard. youtube.com/watch
I'm aware of those pathtracing techniques, but I often hear that they lead to limitations and that in general are difficult to implement and mantain. Vanilla pathtracing as in cycles is also easier for adding feature i think. So, that's why i proposed a different approach. Not an all-in-one integrator, but two easier, simpler and long tested techniques. They are well known, reliable and hopefully can be used together. The merge would give us the best of two worlds
@: Yes thats true. Also VCM & co are surely very hard - if not impossible to implement on OpenCL+CUDA. However Renderman manages to implement them on CPU and still offer insane flexibility in materials etc. (well they got the big Pixar money...).
I'm afraid it wouldn't be much easier to port and maintain everything to Photon Mapping - but I'm not really a programmer how should I know.
I think this "dual Integrator architecture" is kind of how V-ray does it isn't it?
@Simon Storl-Schulke: Dunno about Vray. Afaik it used to use two independent integrators for primary and secondary bounces. I don't know the state of the art of that renderer by these days
I agree that Cycles' path tracing integrator definitely needs some attention. In addition to photon mapping, you ought to take a look at Metropolis Light Transport. It's been proposed before and someone even managed to patch it into Blender experimentally, but it never really caught on. MLT looks like another very promising approach that is worth considering.