Функция glPushClientAttrib
Функции glPushClientAttrib и glPopClientAttrib сохраняют и восстанавливают группы переменных состояния клиента в стеке атрибутов клиента.
Синтаксис
void WINAPI glPushClientAttrib(
GLbitfield mask
);
Параметры
-
mask
-
Маска, указывающая, какие атрибуты следует сохранить. Ниже приведены символьные константы маски и связанные с ними клиентские состояния OpenGL.
Значение Значение - GL_CLIENT_PIXEL_STORE_BIT
Атрибуты режима хранения пикселей. - GL_CLIENT_VERTEX_ARRAY_BIT
Атрибуты массива вершин. - GL_CLIENT_ALL_ATTRIB_BITs
все атрибуты состояния клиента, доступные для стеков.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующий код ошибки может быть получен функцией glGetError .
Имя | Значение |
---|---|
|
Функция была вызвана при заполнении стека атрибута клиента. |
Комментарии
Функция glPushClientAttrib использует параметр mask, чтобы определить, какие группы переменных состояния клиента сохраняются в стеке атрибутов клиента. С помощью побитового оператора OR можно объединить принятые символьные константы для задания битов и создания маски.
Функция glPopClientAttrib восстанавливает значения переменных состояния клиента, которые в последний раз были сохранены с помощью glPushclientAttrib. Переменные состояния клиента, не сохраненные ранее, остаются без изменений. При отправке атрибутов в полный стек атрибутов клиента или выталкивания атрибутов из пустого стека устанавливается флаг ошибки, и никакие другие изменения не вносятся в состояние OpenGL. По умолчанию стек атрибутов клиента пуст.
Некоторые значения состояния клиента OpenGL нельзя сохранить в стеке атрибутов клиента. Например, нельзя сохранить состояния выбора или обратной связи в стеке атрибутов клиента. Глубина стека атрибутов клиента не менее 16.
Функции glPushclientAttrib и glPopClientAttrib не компилируются в отображаемые списки, а выполняются немедленно.
Функции glPushClientAttrib и glPopClientAttrib могут использовать только режимы хранения пикселей push и pop и клиентские состояния массива вершин. Для отправки и всплывающих состояний, которые хранятся на сервере, необходимо использовать glPushAttrib и glPopAttrib .
Примечание
Функции glPushClientAttrib и glPopClientAttrib доступны только в OpenGL версии 1.1 или более поздней.
Следующие функции извлекают сведения, связанные с glPushClientAttrib и glPopClientAttrib:
glGet с аргументом GL_CLIENT_ATTRIB_STACK_DEPTH
glGet с аргументом GL_MAX_CLIENT_ATTRIB_STACK_DEPTH
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|