GLES2.0中文API-glGetError

名称

glGetError- 返回错误信息

C规范

GLenum glGetError(void);

描述

    glGetError返回错误标志的值。每个可检测的错误都分配有数字代码和符号名称。发生错误时,错误标志将设置为相应的错误代码值。在调用glGetError(返回错误代码之前,不会记录其他错误,并将标志重置为GL_NO_ERROR。如果对glGetError的调用返回GL_NO_ERROR,则自上次调用glGetError或自GL初始化以来,没有可检测到的错误。

    为了允许分布式实现,可能存在多个错误标志。如果任何单个错误标志记录了错误,则返回该标志的值,并在调用glGetError时将该标志重置为GL_NO_ERROR。如果多个标志记录了错误,glGetError将返回并清除任意错误标志值。因此,如果要重置所有错误标志,则应始终在循环中调用glGetError,直到它返回GL_NO_ERROR

    初始情况下,所有错误标志都设置为GL_NO_ERROR。

目前定义了以下错误:

GL_NO_ERROR (0)

    没有记录错误。 此符号常量的值保证为0

GL_INVALID_ENUM    (1280)

    为枚举参数指定了不可接受的值。 违规命令被忽略,除了设置错误标志之外没有其他副作用。

GL_INVALID_VALUE    (1281)

扫描二维码关注公众号,回复: 3836370 查看本文章

    数字参数超出范围。 违规命令被忽略,除了设置错误标志之外没有其他副作用。

GL_INVALID_OPERATION    (1282)

    当前状态下不允许指定的操作。 违规命令被忽略,除了设置错误标志之外没有其他副作用。

GL_INVALID_FRAMEBUFFER_OPERATION    (1286)

    该命令试图渲染到帧缓冲区或从帧缓冲区读取,而当前绑定的帧缓冲区不是帧缓冲区完成状态(即glCheckFramebufferStatus的返回值不是GL_FRAMEBUFFER_COMPLETE)。 违规命令被忽略,除了设置错误标志之外没有其他副作用。

GL_OUT_OF_MEMORY    (1285)

    没有足够的内存来执行命令。 在记录此错误之后,GL的状态是未定义的,除了错误标志的状态。

设置错误标志时,仅当GL_OUT_OF_MEMORY发生时,GL操作的结果才是未定义的。 在所有其他情况下,生成错误的命令将被忽略,并且不会影响GL状态或帧缓冲区内容。 如果generate命令返回一个值,则返回0。

另见

glCheckFramebufferStatus

版权

https://www.khronos.org/registry/OpenGL-Refpages/es2.0/xhtml/glGetError.xml

Copyright © 1991-2006 Silicon Graphics, Inc.本文档的许可是根据SGI Free Software B License.详见http://oss.sgi.com/projects/FreeB/.

Android,OpenGL ES,图形学

猜你喜欢

转载自blog.csdn.net/dengchukun/article/details/82667177