glGetError
来源:互联网 发布:华为手机网络助手在哪? 编辑:程序博客网 时间:2024/05/16 16:22
如果函数参数不符或者不符合当前上下文设置的状态,则会导致 OpenGL Error。已 error code 来表示。绝大多数情况下 OpenGL functions 产生 errors,则不会生效。少数有效。
OpenGL Error 存储在一个队列中,直到该错误被处理。因此,如果你不定期的检测错误,你将不会知道某个函数某个函数的调用触发了错误。因此,错误检测应该定期检测,确保知道错误的详细信息。
获取队列中下一个 OpenGL Error,并从队列中移除。如果返回 GL_NO_ERROR 则该队列为空。
GLenum glGetError()
若获取所有的 OpenGL Error
for(GLenum err; (err = glGetError()) != GL_NO_ERROR;)
{
//Process/log the error.
}
所有的返回值有:
GL_NO_ERROR :当前无错误值
GL_INVALID_ENUM :仅当使用非法枚举参数时,如果使用该参数有指定环境,则返回 GL_INVALID_OPERATION
GL_INVALID_VALUE :仅当使用非法值参数时,如果使用该参数有指定环境,则返回 GL_INVALID_OPERATION
GL_INVALID_OPERATION :命令的状态集合对于指定的参数非法。
GL_STACK_OVERFLOW :压栈操作超出堆栈大小。
GL_STACK_UNDERFLOW :出栈操作达到堆栈底部。
GL_OUT_OF_MEMORY :不能分配足够内存时。
GL_INVALID_FRAMEBUFFER_OPERATION :当操作未准备好的真缓存时。
GL_CONTEXT_LOST :由于显卡重置导致 OpenGL context 丢失。
OpenGL Error 存储在一个队列中,直到该错误被处理。因此,如果你不定期的检测错误,你将不会知道某个函数某个函数的调用触发了错误。因此,错误检测应该定期检测,确保知道错误的详细信息。
获取队列中下一个 OpenGL Error,并从队列中移除。如果返回 GL_NO_ERROR 则该队列为空。
GLenum glGetError()
若获取所有的 OpenGL Error
for(GLenum err; (err = glGetError()) != GL_NO_ERROR;)
{
//Process/log the error.
}
所有的返回值有:
GL_NO_ERROR :当前无错误值
GL_INVALID_ENUM :仅当使用非法枚举参数时,如果使用该参数有指定环境,则返回 GL_INVALID_OPERATION
GL_INVALID_VALUE :仅当使用非法值参数时,如果使用该参数有指定环境,则返回 GL_INVALID_OPERATION
GL_INVALID_OPERATION :命令的状态集合对于指定的参数非法。
GL_STACK_OVERFLOW :压栈操作超出堆栈大小。
GL_STACK_UNDERFLOW :出栈操作达到堆栈底部。
GL_OUT_OF_MEMORY :不能分配足够内存时。
GL_INVALID_FRAMEBUFFER_OPERATION :当操作未准备好的真缓存时。
GL_CONTEXT_LOST :由于显卡重置导致 OpenGL context 丢失。
0 0
- glGetError
- OpenGL 错误获取glGetError()
- OpenGL 错误获取glGetError()
- bzoj4391[Usaco2015 dec]High Card Low Card
- ScrollView嵌套可滑动控件(RecyclerView、ListView、GraidView等),ScrollView会自动滚到底部
- IOS 开发 友盟分享-社会化组件SDK v6.0.2-集成指南
- android6.x运行时权限申请管理
- LOL 在这里就是菜…
- glGetError
- android上传图片到服务器
- Gabor算法
- Maven搭建SpringMVC+Hibernate项目详解
- 杭电oj编码2031
- oracle创建表空间
- 如何在桌面上显示自定义View
- Unable to start the daemon process--Could not reserve enough space for object heap
- 快来使用HTTPS吧