GLEDGEFLAGPOINTER

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

名前

glEdgeFlagPointer - 稜線フラグの配列を定義する

 

書式

void glEdgeFlagPointer( GLsizei stride,

                          const GLvoid *ptr )

delim $$  

引き数

stride
連続する稜線フラグ間のオフセットを指定する。 単位はバイトである。 stride が 0 (初期値)ならば、稜線フラグは配列に密に詰められている と解釈される。 初期値は 0 である。
ptr
配列中の最初の稜線フラグを指すポインタを指定する。 初期値は 0 である。
 

説明

glEdgeFlagPointer は レンダリングの際に使う稜線フラグ(真偽値)の配列の位置とデータフォーマット を指定する。 stride は、ある稜線フラグと次の稜線フラグの間の距離を指定する。 これにより、頂点と属性をひとつの配列に格納したり、別々の配列に 格納したりできる。 (実装によっては、ひとつの配列に格納するほうが効率がよい。 詳しくは glInterleavedArrays を参照すること) 稜線フラグの配列が指定されると、strideptr はクライアント側の 状態として保存される。 稜線フラグの配列を有効または無効にするには、 glEnableClientState および glDisableClientState に 引き数 GL_EDGE_FLAG_ARRAY を指定して呼び出す。 有効な場合、稜線フラグは glDrawArrays, glDrawElements, glArrayElement が呼ばれたときに使われる。 予め指定してある頂点と頂点属性の配列からプリミティブ列(全て同じ型) を作るには glDrawArrays を使う。 頂点と頂点属性のインデックス付けによってプリミティブを指定する には glArrayElement を使うこと。 頂点と頂点属性のインデックス付けによってプリミティブを構築する には glDrawElements を使うこと。  

注意

glEdgeFlagPointer を使えるのはバージョン 1.1 以降の GL だけである。 稜線フラグの配列は初期状態では無効になっており、 glArrayElementglDrawElements, glDrawArrays が呼ばれた際にアクセスされない。 glBegin と、その対になる glEnd の間で glEdgeFlagPointer を実行することは許されていないが、 エラーは起こることも起こらないこともある。 エラーが起こらなかった場合の動作は未定義である。 glEdgeFlagPointer は通常はクライアント側で実装される。 配列パラメータである稜線フラグはクライアント側の状態である。 したがって glPushAttribglPopAttrib を使って 保存・復元することはできない。 保存・復元を行うには glPushClientAttrib および glPopClientAttrib を使うこと。  

エラー

GL_INVALID_ENUM: stride が負の場合に起こる。  

関連する取得値

引き数 GL_EDGE_FLAG_ARRAY を指定した glIsEnabled
引き数 GL_EDGE_FLAG_ARRAY_STRIDE を指定した glGet
引き数 GL_EDGE_FLAG_ARRAY_POINTER を指定した glGetPointerv  

関連項目

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


 

Index

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

jman



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