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 関数では、次のエラー コードを取得できます。

名前 意味
GL_STACK_OVERFLOW
クライアント属性スタックがいっぱいの間に関数が呼び出されました。

解説

glPushClientAttrib 関数は、mask パラメーターを使用して、クライアント属性スタックに保存されるクライアント状態変数のグループを決定します。 ビットごとの OR 演算子を使用して、受け入れられたシンボリック定数を結合してビットを設定し、マスクを構築できます。

glPopClientAttrib 関数は、glPushclientAttrib で最後に保存されたクライアント状態変数の値を復元します。 以前に保存されていないクライアント状態変数は変更されません。 完全なクライアント属性スタックに属性をプッシュするか、空のスタックから属性をポップすると、エラー フラグが設定され、OpenGL 状態に対するその他の変更は行われません。 既定では、クライアント属性スタックは空です。

一部の OpenGL クライアント状態値は、クライアント属性スタックに保存できません。 たとえば、選択またはフィードバックの状態をクライアント属性スタックに保存することはできません。 クライアント属性スタックの深さは少なくとも 16 です。

glPushclientAttrib 関数と glPopClientAttrib 関数は、表示リストにコンパイルされませんが、すぐに実行されます。

glPushClientAttrib 関数と glPopClientAttrib 関数は、ピクセル ストレージ モードと頂点配列クライアントの状態のみをプッシュおよびポップできます。 サーバーに保持されているプッシュ状態とポップ状態をプッシュするには、 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 [デスクトップ アプリのみ]
ヘッダー
Gl.h
ライブラリ
Opengl32.lib
[DLL]
Opengl32.dll

関連項目

glColorPointer

glDisableClientState

glEdgeFlagPointer

glEnableClientState

glGet

glGetError

glIndexPointer

glNormalPointer

glNewList

glPixelStore

glPushAttrib

glTexCoordPointer

glVertexPointer