Is it possible to control caustics with separate IOR values for R, G & B colour channels? This would save me a bundle of time in post, not to mention render times. Any tips on how to do this using the node editor would be great!
AFAIK, there's no way to do this with the node editor at this time, because none of the nodes allow separate R, G, and B channel output.
I am not entirely sure how you would use the information, and why it would save time, but if someone were to write a node that did the above, then you could easily set up a gradient or some logic nodes to apply different IOR values based on the channel values coming from the colour of the surface.
You could split the color into its components using 3 instances of the "Color Scalar" node. You'll find it under the Tools group. Double-click on each and set the Mode to the Color Channel you want to split-out/modify.
If you need to bring them back together as a color - use the Make Color node.
Yikes - i notice you are talking about controlling caustics. So splitting is not a problem - but controlling caustics would be. There is no access to Global Illumination's Caustic Intensity/Accuracy/Softnesss that I'm aware of.
The Prism shader is fantastic!
I originally posted the question before the shader was ported to Mac.
For those interested, say if you're using fPrime and can't use the shader - the long winded approach.....
Make three renders, one for each colour channel. You should change the refraction index by a very small amount for each render, say +-0.02. You then combine the appropriate channel from each render in your compositing app or image editor. Result, nice rainbow caustics.