I was hoping to try to create virtual “tickboxes” in the material using boolean values of 0 or 1 to switch between materials since we don’t have the option for on/off functionality in nodegroups currently. The way the ubershader is set up now works, but when using, for instance, a simple diffuse or glossy material the shader still has to cycle through all of the unused materials for every sample, causing a 15-30% increase in render time for a scene with many simple materials. Ideally I’d like to set it up so that if something like “use anisotropy” or “is glass” isn’t set to 1 it wouldn’t even evaluate those parts of the shader tree.
On a more general note, Brecht mentioned in the mailing list that he would take a look at this thread when deciding on ideas for the true integrated Ubershader. I’d love to hear some ideas from people reading this thread about things they’d like to see me add to my WIP shader, and things they’d like to see include d in the real version eventually. Personally I really like the functionality of having controllable shadow opacity for glass materials. My setup currently uses the base color when selecting a shadow color, but I’d like to see a tickbox or on/off switch in the final version that says something like “use object color” which, when turned off, allows you to pick a custom shadow color. If fake caustics made it into the ubershader I’d be thrilled as well, as they are quite useful for selling a scene and cost almost nothing in render time, and it would provide something that even Arnold doesn’t have without lengthly setup time.
I have a laundry list of other things I’d like to see, but at this point I’d pretty much just be reciting features of the standard shader in Arnold and I don’t know how much of that I can share.