GLCOLORPOINTER

Section: Misc. Reference Manual Pages (3G)
索引 xjman
 

名前

glColorPointer - 色の配列を定義する

 

書式

void glColorPointer( GLint size,

                       GLenum type,
                       GLsizei stride,
                       const GLvoid *ptr )

delim $$  

引き数

size
色ごとの要素数を指定する。 3 または 4 でなければならない。 初期値は 4 である。
type
配列中の各色要素のデータ型を指定する。 シンボル定数 GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT, GL_DOUBLE を指定する。 初期値は GL_FLOAT である。
stride
連続する色の間のオフセット(バイト単位)を指定する。 stride が 0 (初期値)ならば、色は配列に密に詰まっていると解釈される。 初期値は 0 である。
ptr
配列中の最初の色要素の最初の要素を指すポインタを指定する。
 

説明

glColorPointer は、レンダリングの際に使われる色要素の配列データ の位置を指定する。 size には色ごとの要素数を指定する。 この値は 3 または 4 でなければならない。 type は色要素のデータ型を指定し、stride は ある色から次の色へのバイト単位での距離を指定する。 これを利用すると、頂点や属性をひとつの配列に詰め込んだり、複数の配列に 格納することができる。 (いくつかの実装では、ひとつの配列に格納するほうが効率がよい。 glInterleavedArrays を参照すること) 色の配列が指定されると、size, type, stride, ptr は クライアント側の状態として保存される。 色の配列を有効または無効にするには、glEnableClientState と 引き数に GL_COLOR_ARRAY を指定した glDisableClientState を呼ぶこと。 有効にされている場合、色の配列は glDrawArrays, glDrawElements, glDrawRangeElements, glArrayElement が 呼ばれたときに使われる。  

注意

glColorPointer はバージョン 1.1 以降の GL でしか使えない。 色の配列は初期状態では無効であり、 glDrawElements が呼ばれてもアクセスされない。 glColorPointerglBegin と、その対になる glEnd の間で実行してはならないが、エラーは起きる場合と 起きない場合がある。エラーが起きなかった場合の動作は未定義である。 glColorPointer は普通はクライアント側で実装される。 色の配列パラメータはクライアント側の状態であり、したがって glPushAttribglPopAttrib では保存・復元されない。 この状態の保存・復元には glPushClientAttribglPopClientAttrib を使うこと。  

エラー

GL_INVALID_VALUE: size が 3, 4 でない場合に起こる。 GL_INVALID_ENUM: type の値が不正なときに起こる。 GL_INVALID_VALUE: stride の値が負の場合に起こる。  

関連する取得値

引き数 GL_COLOR_ARRAY を指定した glIsEnabled
引き数 GL_COLOR_ARRAY_SIZE を指定した glGet
引き数 GL_COLOR_ARRAY_TYPE を指定した glGet
引き数 GL_COLOR_ARRAY_STRIDE を指定した glGet
引き数 GL_COLOR_ARRAY_POINTER を指定した glGetPointerv  

関連項目

glArrayElement(3G), glDrawArrays(3G), glDrawElements(3G), glEdgeFlagPointer(3G), glEnable(3G), glGetPointerv(3G), glIndexPointer(3G), glInterleavedArrays(3G), glNormalPointer(3G), glPopClientAttrib(3G), glPushClientAttrib(3G), glTexCoordPointer(3G), glVertexPointer(3G)


 

Index

名前
書式
引き数
説明
注意
エラー
関連する取得値
関連項目

jman



Time: 07:01:05 GMT, January 12, 2009