(1.)將原先複習開啟的GLUT程式碼刪除
(2.)打上程式碼:
#include <GL/glut.h>///使用GLUT外掛
void display()
{
glutSolidTeapot(0.3);///實心的茶壺
glutSwapBuffers();
}
int main(int argc, char**argv)
{
glutInit(&argc,argv); ///main的參數於進來
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
///啟動3D的顯示功能,兩倍顯示buffer,有3D深度值
glutCreateWindow("Week02 Yes!!"); ///建3D窗子
glutDisplayFunc(display); ///等一下怎麼畫
glutMainLoop(); ///主迴圈,卡在這,不會結束
}
(3.)run and build 跑程式碼,會出現白色茶壺的圖案
2.把現有的茶壺改顏色
*只改函式裡的,其他不改
void display()
{
glColor3f(0.5,0,0);///!!!一定要放在建茶壺之前,不然就還是白色的茶壺
glutSolidTeapot(0.3);
glutSwapBuffers();
}
*色彩3f,f是float浮點數的意思,()內分別是(R,G,B)的數值3.畫三角形
void display()
{
glColor3f(0.5,1.0,0.5);
glBegin(GL_POLYGON);
glVertex2f(1,-1);///vertex是頂點的位址
glVertex2f(-1,1);
glVertex2f(-1,-1);
glEnd();
glutSwapBuffers();
}
4.畫彩色三角形
*只改函式裡的,其他不改
void display()
{
glBegin(GL_POLYGON);
glColor3f(1,0,0); glVertex2f(1,-1);///vertex是頂點的位址
glColor3f(0,1,0); glVertex2f(-1,1);
glColor3f(0,0,1); glVertex2f(-1,-1);
glEnd();
glutSwapBuffers();
}
5.彩色三角形線條
*只改函式裡的,其他不改
void display()
{
glBegin(GL_LINE_LOOP);///把POLYGON改成LINE LOOP 可以將實心的改成線條
glColor3f(1,0,0); glVertex2f(0.9,0);///vertex是頂點的位址
glColor3f(0,1,0); glVertex2f(-0.9,0.9);
glColor3f(0,0,1); glVertex2f(-0.9,-0.9);
glEnd();
glutSwapBuffers();
}






沒有留言:
張貼留言