glEdgeFlagPointer 函式

glEdgeFlagPointer函式會定義邊緣旗標的陣列。

語法

void WINAPI glEdgeFlagPointer(
         GLsizei stride,
   const GLvoid  *pointer
);

參數

大步

連續邊緣旗標之間的位元組位移。 當 stride 為零時,邊緣旗標會緊密封裝在陣列中。

指標

陣列中第一個邊緣旗標的指標。

傳回值

此函式不會傳回值。

錯誤碼

glGetError函式可以擷取下列錯誤碼。

名稱 意義
GL_INVALID_ENUM
stridecount 為負數。

備註

glEdgeFlagPointer函式會指定要在轉譯時使用之布林邊緣旗標陣列的位置和資料。 stride參數會決定從一個邊緣旗標到下一個邊緣旗標的位元組位移,以便封裝單一陣列或個別陣列中的頂點和屬性。 在某些實作中,將頂點和屬性儲存在單一陣列可能會比使用個別陣列更有效率。

當您使用 glEnableClientState指定 GL_EDGE_FLAG_ARRAY 常數時,就會啟用邊緣旗標陣列。 啟用時, glDrawArraysglArrayElement 會使用邊緣旗標陣列。 根據預設,邊緣旗標陣列已停用。

使用 glDrawArrays 從預先指定的頂點和頂點屬性陣列建構一連串的基本類型 (所有相同類型) 。 使用 glArrayElement 藉由編制頂點和頂點屬性的索引來指定基本類型,並使用 glDrawElement 來 建立頂點和頂點屬性來建構基本類型的序列。

您無法在顯示清單中包含 glEdgeFlagPointer

當您使用 glEdgeFlagPointer指定邊緣旗標陣列時,所有函式邊緣旗標陣列參數的值都會儲存在用戶端狀態中,而且可以快取靜態陣列元素。 因為邊緣旗標陣列參數處於用戶端狀態, 所以 glPushAttribglPopAttrib 不會儲存或還原其值。

雖然在 glBegin/排序配對內呼叫glEdgeFlagPointer不會產生錯誤,但結果並未定義。

下列函式會擷 取 glEdgeFlagPointer 函 式的相關資訊:

glGet with argument GL_EDGE_FLAG_ARRAY_STRIDE

glGet with argument GL_EDGE_FLAG_ARRAY_COUNT

具有引數的glGetPointerv GL_EDGE_FLAG_ARRAY_POINTER

glIsEnabled with argument GL_EDGE_FLAG_ARRAY

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Gl.h
程式庫
Opengl32.lib
DLL
Opengl32.dll

另請參閱

glArrayElement

glBegin

glColorPointer

glDrawArrays

glEnableClientState

glEnd

glGet

glGetPointerv

glGetString

glIndexPointer

glIsEnabled

glNormalPointer

glPopAttrib

glPushAttrib

glTexCoordPointer

glVertexPointer