glDrawElements上的GL_INVALID_ENUM

问题描述 投票:1回答:1

我用nglDrawElements(4),glDrawElements,(顶点数量,大于0)和0来调用GL_TRIANGLESGL_UNSIGNED_SHORT)。错误是针对GL_TRIANGLES,说4是无效类型,但glDrawArrays有效。 glDrawElements代码:

nglDrawElements(GL_TRIANGLES, GL_UNSIGNED_SHORT, numVertices, 0);

glDrawArrays的工作代码:

glDrawArrays(GL_TRIANGLES, 0, numVertices);

为什么nglDrawElements会为GL_TRIANGLES抛出错误?

java opengl lwjgl
1个回答
1
投票

那是因为你共同使用了第二个(count)和第三个(type)参数,原型是

void glDrawElements(GLenum mode,
                    GLsizei count,
                    GLenum type,
                    const GLvoid * indices);
© www.soinside.com 2019 - 2024. All rights reserved.