Hi,
Is there a way to render nested dielectrics using Arnold 5? I am aware of JF Nested Dielectrics, but I’m also pretty sure that it doesn’t work in Arnold 5. Integration into the Standard Surface shader would be immensely useful!
Rob
No, nested dielectrics is not supported yet. JF Nested Dielectrics would have to be updated and recompiled for Arnold 5
I do not know about C4DtoA, but in the MtoA tutorial "Rendering Glass Surfaces with Arnold" it's implied that the method outlined in the 2002 paper "Simple Nested Dielectrics in Ray Traced Images" by Schmidt and Budge has been implemented.
Some simple experiments show that the nested dielectrics method does seem to be present, but only if the transmission depth has a non-zero value, at which point all objects behave as if they have an identical nesting priority. This might give acceptable results in some cases, but is technically very contradictory and leads to physically impossible solutions.
Other renderers that make use of the nested dielectrics algorithm, such as Maxwell or Houdini's Mantra, have exposed parameters on the shaders for manually assigning the nesting priorities. But there doesn't seem to be one in Arnold. Or at least not that I can find in MtoA 2.0.1.
A simple image demonstrates the paradoxical intersections that matching priorities can give rise to. With overlapping geometries, the interior volume needs to belong to one object or the other (as determined by their priority setting), but here the shader chosen by the renderer depends on which sphere we see it through. Viewed through the green sphere, the red sphere occupies the overlapping volume. Seen through the red sphere, the green sphere seems to occupy that very same volume.
So does Arnold indeed make use of the nested dielectrics algorithm? It sure seems that way. But is there a way to set the nesting priorities?