   Simple Effects/Technique organization question
  Learning HLSL here, and had a basic question.I have written a shader that just texture maps polies, one that performs basic diffuse, and one that does bump mapping.  I wanted opinions on the best way to organize these and why.- I could put them all in one Effects File (or in a few different files using #includes) separated by different techniques but all accessed in the same LPD3DXEFFECT.- I could split them up into different effects. (ex LPD3DXEFFECT BumpEffect, LPD3DXEFFECT BasicEffect, etc)- They could all use the same techniques, but use a bool to determine if lighting should be applied, bitangent should be applied, etc.I'm kinda wondering if there's 'gotchas' and 'dos and don't' concerning organizing these.  In the future, I plan on adding other shaders for shadow mapping, post-processing, or whatever.  I'd just like to get my initial design correct at the early stage so I can avoid headaches later on.Thanks,   
  In my opinion, it depends on what type of application you are working on.  If it's just a smaller demo, it's cool to put them all in the same effect.  In fact, this helps, because it makes your code shorter (ie only one effect to create) and it lets you have all your shaders in one place.However, if you are doing an engine, you are probably going to want to separate them, depending on your material framework.  I have found that it is best to keep effect files to one kind of technique, with varying degrees of complexity (for different hardware).  For example, you could have BumpMap.fx that has the following techniques:BumpMap3  (Shader 3.0)BumpMap2  (Shader 2.0)BumpMap1  (Shader 1.0)I think this lets you keep your shaders organized when dealing with a lot of different shaders.   