Original Post
Hi, I'm trying to create a material system for my deferred renderer also I'm using effects framework with dx 11. Currently I don't have material class and I have a class for every shader that I'm using and I'm setting shader parameters from that class but obviously it is not a good approach and I was using it just for the beginning. So before go any further I want to change it. And I'm trying to find what my material and shader classes should include and how they use that information. For example material obviously should know about material related variables in shader but there are other variables that are not related to how things are seen like matrices so which part of the game should be responsible for setting these kind of variables. And I'm thinking about writing xml for every shader which includes details about variables in the corresponding shader so I can use one universal shader class which has list of shader variables created using the information in xml file.