Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 public static void loadList(String[] urls, OnShadersParsed onload)
 {
     for (var i = 0; i < urls.Length; ++i)
     {
         ShaderParser.load(urls[i], onload);
     }
 }
Exemplo n.º 3
0
        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);
            //});
        }