public static void parse(String url, String src, OnShadersParsed onload) { List <shader_t> shaders = new List <shader_t>(); ShaderTokenizer tokens = new ShaderTokenizer(src); // Parse a shader while (!tokens.EOF()) { String name = tokens.next(); shader_t shader = ShaderParser.parseShader(name, tokens); if (shader != null) { shader.url = url; if (shader.stages != null) { for (var i = 0; i < shader.stages.Count; ++i) { // Build a OpenGL shader program out of the stage parameters set here shader.stages[i].shaderSrc = ShaderParser.buildShaderSource(shader, shader.stages[i]); } } } shaders.Add(shader); } // Send shaders to gl Thread onload(shaders); }
public static void loadList(String[] urls, OnShadersParsed onload) { for (var i = 0; i < urls.Length; ++i) { ShaderParser.load(urls[i], onload); } }
public static void load(String url, OnShadersParsed onload) { string responseText = System.IO.File.ReadAllText(url); AlethaApplication.incReqests(); AlethaApplication.update_progress_bar(AlethaApplication.request_number, url); ShaderParser.parse(url, responseText, onload); //fetch(url, "text/plain").then((request)8 //{ // q3shader.parse(url, request.responseText, onload); //}); }