コード例 #1
0
        public string getShaderInfoLog(WebGLShader shader)
        {
#if _DEBUG
            Log.Info("getShaderInfoLog");
#endif
            var GL_INFO_LOG_LENGTH = 35716;
            //var GL_SHADING_LANGUAGE_VERSION = 35724;
            int k;
            unsafe
            {
#if GLEW_STATIC
                Gl.glGetShaderiv(shader.Value, GL_INFO_LOG_LENGTH, &k);
#else
                Gl.__glewGetShaderiv(shader.Value, GL_INFO_LOG_LENGTH, &k);
#endif
            }
            if (k <= 0)
            {
                return(string.Empty);
            }

            var result = new byte[k];
            unsafe
            {
                fixed(byte *presult = &result[0])
                {
#if GLEW_STATIC
                    Gl.glGetShaderInfoLog(shader.Value, k, &k, presult);
#else
                    Gl.__glewGetShaderInfoLog(shader.Value, k, &k, presult);
#endif
                }
            }

            ////var version = glGetString(GL_SHADING_LANGUAGE_VERSION);

            return(new string(Encoding.ASCII.GetChars(result)));
        }