var pixgl = {
    getGLContext: function (canvas)
    {
    	var gl;
    	try 
    	{ 
            gl = canvas.getContext("webkit-3d"); 
        } 
        catch (e) 
        {
        }
    
    	if (!gl)
    	{
            try 
            { 
                gl = canvas.getContext("moz-webgl"); 
            } 
            catch(e2) 
            {
            }
        }
    	return gl;
    },
    compileShader: function (gl, id, type)
    {
    	var shader_el = document.getElementById(id);
    	var shader = gl.createShader(type);
    	if (!shader)
    	{
            throw "could not create shader";
    	}
    
    	gl.shaderSource(shader, shader_el.text);
    	gl.compileShader(shader);
    
    	if (!gl.getShaderParameter(shader,gl.COMPILE_STATUS))
    	{
            throw "Error compiling " + (type == gl.VERTEX_SHADER ? "vertex" : "fragment") + " shader: " + gl.getShaderInfoLog(shader);
    	}
    
    	return shader;
    }
};

