UPDATE RC-1
For the new features find my Bump-post, I also added time shader constant passed down automatically.
Link : http://pastebin.ca/2015990
OKAY GOT THE DIFF to WORK
http://pastebin.ca/2011488
UPDATE v 0.2
I addressed the following issues, the function is now called getXMLMaterialType and doesn't require you to set baseMaterial (reads from xml if specified) also can pass the camera far value to the shader.
Link : http://pastebin.ca/2012004
1) Rather than them being considered a special sort of "shader material", I think we should assume that all materials exist in the filesystem as files. We'd need a material cache in the video driver base class and some fake file names to go with it. I'm thinking we may want to export materials, maybe not but it's at least worth thinking about.
2) Rather than have a shaderCodeFallback, we should use something like materialFallback and give a file name to fall back to. For example the default could be SOLID which represents the built-in EMT_SOLID renderer.