Yeah, it gets you half way there but it can't do the most critical thing when it comes to scene states which is switching material assignments between states.  When I render a shadow pass I want a black and white material over everything in the scene while for diffuse every object will most likely have its own material applied and so on and so forth.  (Come to think of it, it's not possible to apply materials recursively over multiple objects in Blender either, at least not to my knowledge.)
<br><br>I suppose one could write a python script that traverses objects in the scene and records their material bindings and other pertinent information to an internal text file and then reads that text file back and applies those settings back on to said objects.&nbsp; This could apply to all sorts of settings too.
<br><br>Now if I could only find the time... :p<br><br>phong.<br>