名称
glGetDebugMessageLog — 从调试消息日志中检索消息
C 规范
GLuint glGetDebugMessageLog( GLuint count,
GLsizei bufSize,
GLenum *sources,
GLenum *types,
GLuint *ids,
GLenum *severities,
GLsizei *lengths,
GLchar *messageLog);
参数
count
要从日志中检索的调试消息的数量。
bufSize
地址由messageLog给出的缓冲区的大小。
sources
接收检索到的消息源的变量数组的地址。
types
接收检索到的消息类型的变量数组的地址。
ids
无符号整数数组的地址,用于接收检索到的消息的id。
严重程度
接收检索到的消息的列表的变量数组的地址。
severities
接收所接收消息长度的变量数组的地址。
messageLog
接收消息的字符数组的地址。
描述
glGetDebugMessageLog从调试消息日志中检索消息。从日志中检索到最大数量的消息。如果sources不为NULL,则将每个消息的源写入数组中最多计数的元素。如果类型不为NULL,则将每个消息的类型写入数组中最多计数的元素。如果id不为NULL,则将每个消息的标识符写入数组中最多计数的元素。如果严重性不为NULL,则将每条消息的严重性写入到计数数组的元素中。如果lengths不为NULL,则每条消息的长度将写入数组中的元素数。
messageLog指定将调试消息写入其中的字符数组的地址。每条消息将从messageLog的第一个元素开始串联到数组上。 bufSize指定数组messageLog的大小。如果消息无法容纳到messageLog的剩余空间中,则该函数将终止并返回到目前为止已写入的消息数,该数目可能为零。
如果glGetDebugMessageLog返回零,则调试日志中没有消息,或者messageLog中没有足够的空间来检索队列中的第一条消息。如果messageLog为NULL,则不会写入任何消息,并且bufSize的值将被忽略。
##注意
尽管可以在非调试上下文中启用调试消息,但是此类消息的数量和详细信息可能实质上劣于调试上下文中的消息。特别是,在非调试上下文中调试消息队列的有效实现可能根本不会产生任何消息。
##错误
如果count或bufSize为负数,则生成GL_INVALID_VALUE。
##相关获取
glGet参数GL_DEBUG_LOGGED_MESSAGES
glGet参数GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH
glGet参数GL_MAX_DEBUG_MESSAGE_LENGTH
glGet参数GL_MAX_DEBUG_LOGGED_MESSAGES
API 支持版本
函数名 | 2.0 | 3.0 | 3.1 | 3.2 |
---|---|---|---|---|
glGetDebugMessageLog | - | - | - | ✔ |
另见
glDebugMessageInsert, glDebugMessageCallback, glDebugMessageControl.
版权
https://www.khronos.org/registry/OpenGL-Refpages/es3/html/glGetDebugMessageLog.xhtml
Copyright © 2013-2015 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.