TShader GetShader<TShader>() where TShader : Shader { foreach (Shader shader in shaders) { TShader tshader = shader as TShader; if (tshader != null) return tshader; } return null; }
public bool Preprocess(ShaderLanguage stage, string[] shaderStrings, out string result) { var messageType = SetMessageOptions(MessageType.Default); var shader = new TShader(mInfoSink, stage, mIntermediate, mSymbols); shader.setStrings (shaderStrings); int defaultVersion = (Options & (int) TOptions.DefaultDesktop) > 0 ? 110: 100; return shader.preprocess (defaultVersion, Profile.NoProfile, false, false, messageType, out result); }