glBegin 函式

glBegin儲存函式會分隔基本或類似基本類型的頂點。

語法

void WINAPI glBegin(
   GLenum mode
);

參數

mode

要從 glBegin與後續擷取之間呈現的頂點建立的基本或基本類型。 以下是接受的符號常數及其意義:

意義
GL_POINTS
將每個頂點視為單一點。 頂點 n 定義點 n。 繪製N點。
GL_LINES
將每對頂點視為獨立的折線段。 頂點 2n - 12n 定義行 n繪製 N/2 行。
GL_LINE_STRIP
從第一個頂點到最後一個頂點繪製一組連接的線條線段。 頂點 nn+1 定義第 n行。 N - 繪製 1 條線。
GL_LINE_LOOP
從第一個頂點到最後一個頂點繪製一組連接的線條線段,然後回到第一個頂點。 頂點 nn + 1 定義第 n行。 不過,最後一行是由頂點 N1所定義。 繪製 N 條線。
GL_TRIANGLES
將每三個頂點視為獨立的三角形。 頂點 3n - 23n - 13n 定義三角形 n繪製 N/3 個 三角形。
GL_TRIANGLE_STRIP
繪製一組連接的三角形。 針對前兩個頂點之後呈現的每個頂點定義一個三角形。 針對奇數 n、頂點 nn + 1n + 2 定義三角形 n。 針對偶 數 n,頂點 n + 1nn + 2 會定義三角形 nN - 繪製 2 個三角形。
GL_TRIANGLE_FAN
繪製一組連接的三角形。 前兩個頂點之後所呈現的每個頂點都會定義一個三角形。 頂點 1n + 1n + 2 定義三角形 nN - 繪製 2 個三角形。
GL_QUADS
將四個頂點的每個群組視為獨立的四邊形。 頂點 4n - 34n - 24n - 14n 定義四邊形 n繪製 N/4 四邊形。
GL_QUAD_STRIP
繪製一組連接的四邊形。 針對第一對之後呈現的每個頂點,定義一個四邊形。 頂點 2n - 12n、2n+ 22n + 1 定義四邊形 nN/2 - 繪製 1 個四邊形。 請注意,頂點用來從等量資料建構四邊形的順序,與與獨立資料搭配使用的順序不同。
GL_POLYGON
繪製單一凸面多邊形。 頂點 1N 定義此多邊形。

傳回值

此函式不會傳回值。

錯誤碼

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

名稱 意義
GL_INVALID_ENUM
mode 設定為未接受的值。
GL_INVALID_OPERATION
glVertex、glColor、glIndexglNormalglTexCoordglEvalCoordglEvalPointglMaterialglEdgeFlagglCallList 或 glCallLists以外的函式,是在glBegin與對應的回應式之間呼叫。 在呼叫對應的glBegin之前呼叫函式或在glBeginglend序列內呼叫glBegin/ 。

備註

glBegin儲存函式會分隔定義基本類型或類似基本類型的頂點。 glBegin函式接受單一引數,指定頂點組成之十個基本類型的引數。 將 n 視為從一開始的整數計數,並將 N 視為指定的頂點總數,解譯如下所示:

  • 您只能使用 glBegin儲存之間的 OpenGL 函式子集。 您可以使用的函式如下:

    glVertex

    glColor

    glIndex

    glNormal

    glTexCoord

    glEvalCoord

    glEvalPoint

    glMaterial

    glEdgeFlag

    您也可以使用glCallList 或 glCallLists來執行只包含上述函式的顯示清單。 如果在 glBegin存回之間呼叫任何其他 OpenGL 函式,則會設定錯誤旗標,並忽略函式。

  • 不論在 glBegin中為模式選擇的值為何,您都可以在glBegin存取之間定義的頂點數目沒有任何限制。 不會繪製未完全指定的線條、三角形、四邊形和多邊形。 提供太少的頂點來指定單一基本類型或指定不正確的頂點倍數時,未完成的規格結果。 忽略不完整的基本類型;會繪製完整的基本類型。

  • 每個基本類型的頂點規格下限為:

    頂點數目下限 基本類型
    1
    2 line
    3 三角形
    4 四邊形
    3 多邊形
  • 需要特定多個頂點的模式GL_LINES (2) 、GL_TRIANGLES (3) 、GL_QUADS (4) ,以及GL_QUAD_STRIP (2) 。

規格需求

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

另請參閱

glCallList

glCallLists

glColor

glEdgeFlag

glEnd

glEvalCoord

glEvalPoint

glIndex

glMaterial

glNormal

glTexCoord

glVertex