如何使用openGL畫出一個三角形呢 ?
要構成一個三角形你需要三個點,由這三個點才能連成三條線,最後由這三條線形成三角形。
座標 Coordinate
在openGL內你必須先定義三角形的每一個頂點,而定義這些"Points"需要座標 Coordinate
2D Coordinate System
3D Coordinate System
定義Point
了解座標系統後,接著就是根據座標來定義point,在openGL內定義2D座標系統的function為glVertex2fv
還有其他類型的point 定義方法
特別說明幾個function :
void glVertex3fv(const GLfloat * v)
能將一個vertex的x y z 軸放入一個array,由此來定義point
void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
W = 縮放比例
使用「齊次座標」(homogeneous coordinate)來呈現,這一方面是為了方便將空間的平移、縮放、旋轉等轉換使用矩陣來記錄。
畫出三角形
1. 畫圖之前,首先會將畫布清空成白色,並且清掉color buffer。
glClearColor(1.0, 1.0, 1.0, 0.0); glClear(GL_COLOR_BUFFER_BIT);
2. 之後告訴系統接下來要畫出的形狀為三角形,且定義顏色為紅色以及其三個頂點V1 ~ V3(綠色為註解)
3. 畫完之後記得要釋放所佔掉的空間。
glFlush();
程式碼 :
glClearColor(1.0, 1.0, 1.0, 0.0); glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_TRIANGLES); glColor3f(1.0, 0.0, 0.0); glVertex2f(50.f, 50.f); glVertex2f(150.f, 50.f); glVertex2f(100.f, 150.f); glEnd(); glFlush();
結果 :
全站熱搜
留言列表