#region Private Members using System; using System.Reflection; using System.Diagnostics; #endregion // Private Members // This file is part of the ANX.Framework created by the // "ANX.Framework developer group" and released under the Ms-PL license. // For details see: http://anxframework.codeplex.com/license namespace StockShaderCodeGenerator { class Program { internal static ConsoleTraceListener TraceListener = new ConsoleTraceListener(); static void Main(string[] args) { foreach (string arg in args) { if (String.Equals(arg, "/silent", StringComparison.InvariantCultureIgnoreCase)) { ConsoleTraceListener.Silence = true; } } Program.TraceListener.WriteLine("ANX.Framework StockShaderCodeGenerator (sscg) Version " + Assembly.GetExecutingAssembly().GetName().Version); string buildFile; if (args.Length < 1) { Program.TraceListener.WriteLine("No command line arguments provided. Trying to load build.xml from current directory."); buildFile = "build.xml"; } else { buildFile = args[0]; } Program.TraceListener.WriteLine("Creating configuration using '{0}' configuration file.", buildFile); Configuration.LoadConfiguration(buildFile); if (Configuration.ConfigurationValid) { if (Compiler.GenerateShaders()) { CodeGenerator.Generate(); } else { Program.TraceListener.WriteLine("error while compiling shaders. Code generation skipped..."); } } } } }