Функция glGetError
Функция glGetError возвращает сведения об ошибке.
Синтаксис
GLenum WINAPI glGetError(void);
Параметры
У этой функции нет параметров.
Возвращаемое значение
Функция glGetError возвращает один из следующих кодов ошибок.
Код возврата | Описание |
---|---|
|
Для аргумента перечисления указано недопустимое значение. Функция, назначающая ошибку, игнорируется, так как не имеет побочных эффектов, кроме установки флага ошибки. |
|
Числовой аргумент выходит за пределы диапазона. Функция, назначающая ошибку, игнорируется, так как не имеет побочных эффектов, кроме установки флага ошибки. |
|
Указанная операция не допускается в текущем состоянии. Функция, назначающая ошибку, игнорируется, так как не имеет побочных эффектов, кроме установки флага ошибки. |
|
Ошибка не была записана. Значение этой символьной константы гарантированно равно нулю. |
|
Эта функция приведет к переполнению стека. Функция, назначающая ошибку, игнорируется, так как не имеет побочных эффектов, кроме установки флага ошибки. |
|
Эта функция вызовет переполнение стека. Функция, назначающая ошибку, игнорируется, так как не имеет побочных эффектов, кроме установки флага ошибки. |
|
Для выполнения функции недостаточно памяти. Состояние OpenGL не определено, за исключением состояния флагов ошибок после записи этой ошибки. |
Обратите внимание, что glGetError возвращает GL_INVALID_OPERATION, если он вызывается между вызовом glBegin и соответствующим вызовом glEnd.
Комментарии
Каждой обнаруживаемой ошибке назначается числовой код и символьное имя. При возникновении ошибки флагу ошибки присваивается соответствующее значение кода ошибки. Другие ошибки не записываются до вызова glGetError , возврата кода ошибки и сброса флага до GL_NO_ERROR. Если вызов glGetError возвращает GL_NO_ERROR, с момента последнего вызова glGetError или с момента инициализации OpenGL не произошло никаких ошибок.
Чтобы разрешить распределенные реализации, может существовать несколько флагов ошибок. Если какой-либо один флаг ошибки записал ошибку, возвращается значение этого флага и этот флаг сбрасывается до GL_NO_ERROR при вызове glGetError . Если несколько флагов записали ошибку, glGetError возвращает и удаляет произвольное значение флага ошибки. Если все флаги ошибок должны быть сброшены, следует всегда вызывать glGetError в цикле, пока он не вернет GL_NO_ERROR.
Изначально всем флагам ошибок присваивается значение GL_NO_ERROR.
При установке флага ошибки результаты операции OpenGL не определяются, только если произошло GL_OUT_OF_MEMORY. Во всех остальных случаях функция, создающая ошибку, игнорируется и не влияет на состояние OpenGL или содержимое framebuffer.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|