glIndexPointer 関数

glIndexPointer 関数は、カラー インデックスの配列を定義します。

構文

void WINAPI glIndexPointer(
         GLenum  type,
         GLsizei stride,
   const GLvoid  *pointer
);

パラメーター

type

次のシンボリック定数を使用する配列内の各色インデックスのデータ型: GL_SHORT、GL_INT、GL_FLOAT、GL_DOUBLE。

stride

連続する色インデックス間のバイト オフセット。 stride が 0 の場合、カラー インデックスは配列に密に詰め込まれます。

pointer

配列内の最初の色インデックスへのポインター。

戻り値

この関数は値を返しません。

エラー コード

glGetError 関数では、次のエラー コードを取得できます。

名前 意味
GL_INVALID_ENUM
type は受け入れ可能な値ではありません。
GL_INVALID_VALUE
ストライド または カウント が負でした。

解説

glIndexPointer 関数は、レンダリング時に使用するカラー インデックスの配列の場所とデータを指定します。 type パラメーターは、各カラー インデックスのデータ型を指定し、stride は 1 つのカラー インデックスから次のカラー インデックスへのバイト オフセットを決定し、1 つの配列またはストレージ内の頂点と属性を別々の配列にパッキングできるようにします。 一部の実装では、頂点と属性を 1 つの配列に格納する方が、個別の配列を使用するよりも効率的です。 詳細については、「 glInterleavedArrays」を参照してください。

glEnableClientState でGL_INDEX_ARRAY定数を指定すると、色インデックス配列が有効になります。 有効にすると、 glDrawArraysglArrayElement で color-index 配列が使用されます。 既定では、color-index 配列は無効になっています。

表示リストに glIndexPointer を含めることはできません。

glIndexPointer を使用してカラーインデックス配列を指定すると、すべての関数のカラーインデックス配列パラメーターの値がクライアント側の状態で保存され、静的配列要素をキャッシュできます。 カラー インデックス配列パラメーターはクライアント側の状態であるため、その値は glPushAttrib および glPopAttrib によって保存または復元されません。

glBeginglEnd のペア内で glIndexPointer を呼び出してもエラーは生成されませんが、結果は未定義です。

次の関数は 、glIndexPointer に関連する情報を取得します。

glIsEnabled と引数GL_INDEX_ARRAY

引数GL_INDEX_ARRAY_STRIDEを含む glGet

引数GL_INDEX_ARRAY_COUNTを含む glGet

引数GL_INDEX_ARRAY_TYPEを含む glGet

引数GL_INDEX_ARRAY_SIZEを含む glGet

引数がGL_INDEX_ARRAY_POINTERされた glGetPointerv

要件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Gl.h
ライブラリ
Opengl32.lib
[DLL]
Opengl32.dll

関連項目

glArrayElement

glColorPointer

glDrawArrays

glEdgeFlagPointer

glGetPointerv

glGetString

glNormalPointer

glPushAttrib

glTexCoordPointer

glVertexPointer