The user has to do this, because I rely on default.fx, which is different for A7 and A8 - so, if he uses A8, he can simply compile the shaders by himself. Also, I intend to concatenate a dynamically composed preamble of defines with a shader stub, that react on these defines. This way, Lite-C defines can be passed on startup to the shader code and optimized version can be compiled then. Also, if I pass static variables (like blur radius, blur samples, AO approximation passes, etc.) this way to a shader, things will get optimized, too.

I also intend to design my framework so that if some values change, shaders are getting re-compiled, like blur quality, etc. This way, I write a shader once and if the gamers wants a different shader quality (for, e.g, speed reasons), the user can pass this through a function to my solution and the very special shader gets re-compiled with the new settings. I also target to replace the different object shaders for my extra render views with one file for all and compile them differently for each object type.

Last edited by HeelX; 05/03/11 07:47.