I've been trying to come up with a nice generic way of setting up surface materials/shaders in my renderer. A scripting system seems to be the best approach.
It should include, for multiple passes:-
vertex attribute stream binding
pixel/vertex shader binding
texture stage setup
additional utility texture objects
sockets for external app defined variables (such as time, weather, animation frame)
Basically, I want an open ended, future proof(ish) system for setting up shaders/combiners.
Now, I noticed the short pdf ATI produced which describes the system they use in their RenderMonkey shading system, and I've played around with RenderMonkey itself, which seems nice enough. I don't understand how I can make use of RenderMonkey, however, because it doesn't appear to export any script files etc.
Does anyone have an opinion on the way RenderMonkey does things, or suggestions of papers/documents that I might find useful while addressing this issue?