public WebGLUniformLocation getUniformLocation(WebGLProgram program, string name)
        {
#if _DEBUG
            Log.Info(string.Format("getUniformLocation {0} {1}", (int)program.Value, name));
#endif
            var bytes = Encoding.ASCII.GetBytes(name);
            GlUniformLocation glUniformLocation = null;
            unsafe
            {
                fixed(byte *b = bytes)
                {
#if GLEW_STATIC
                    glUniformLocation = new GlUniformLocation(Gl.glGetUniformLocation(program.Value, b));
#else
                    glUniformLocation = new GlUniformLocation(Gl.__glewGetUniformLocation(program.Value, b));
#endif
                }
            }

            this.ErrorTest();

#if _DEBUG
            Log.Info(string.Format("value {0}", glUniformLocation.Value));
#endif

            return(glUniformLocation);
        }