我在Chrome浏览器中运行了一个WebGL页面。
偶尔,Chrome会报告以下错误:
[.WebGLRenderingContext]GL ERROR :GL_INVALID_OPERATION : glDrawElements:尝试进行渲染,但未启用属性1的缓冲区附加
我已经试图调试发生错误的位置,但无法找到。我可以可靠地引发它,但当我调试时,错误会在看似随机的代码行上报告。我怀疑这是因为GPU渲染的异步性质造成的。
有没有一种好的方法来调试此问题?
偶尔,Chrome会报告以下错误:
[.WebGLRenderingContext]GL ERROR :GL_INVALID_OPERATION : glDrawElements:尝试进行渲染,但未启用属性1的缓冲区附加
我已经试图调试发生错误的位置,但无法找到。我可以可靠地引发它,但当我调试时,错误会在看似随机的代码行上报告。我怀疑这是因为GPU渲染的异步性质造成的。
有没有一种好的方法来调试此问题?
gl.vertexAttrib4f(...)
代替gl.vertexAttrib1f(...)
。我在这里遇到了类似的问题:http://stackoverflow.com/questions/28584589/why-i-cant-use-uniform1f-instead-of-uniform4f-for-the-gl-fragcolor-initializing(目前还没有人回答)。 - Andrey Bushmanuniform1f
(对于uniform
变量)会有同样的结果,但是我遇到了问题。请看我的链接。 - Andrey Bushman