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會定義四邊形n N/2 - 繪製 1 個 四邊形。 請注意,頂點用來從等量資料建構四邊形的順序與獨立資料搭配使用的順序不同。
GL_POLYGON
繪製單一凸面多邊形。 頂點 1N 會定義此多邊形。

傳回值

此函式不會傳回值。

錯誤碼

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

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

備註

glBegin存回函式會分隔定義基本類型或類似基本類型的頂點。 glBegin函式接受單一引數,指定頂點撰寫的十個基本類型。 以 n 作為從一開始的整數計數,而 N 作為指定的頂點總數,解譯如下:

  • 您只能在 glBegin 與子集之間使用 OpenGL 函 的子集。 您可以使用的函式包括:

    glVertex

    glColor

    glIndex

    glNormal

    glTexCoord

    glEvalCoord

    glEvalPoint

    glMaterial

    glEdgeFlag

    您也可以使用 glCallListglCallLists 來執行只包含上述函式的顯示清單。 如果 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 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Gl.h
程式庫
Opengl32.lib
DLL
Opengl32.dll

另請參閱

glCallList

glCallLists

glColor

glEdgeFlag

glEnd

glEvalCoord

glEvalPoint

glIndex

glMaterial

glNormal

glTexCoord

glVertex