2015年3月26日 星期四

02160314_黃詩凱_Week05

1.先複習上星期的甜甜圈,並且能夠讓甜甜圈旋轉。



2.利用 glBegin(GL_LINE_LOOP);   劃出方形。
            glVertex2f(0.2, 0.2);
            glVertex2f(0.2, -0.2);
            glVertex2f(-0.2, -0.2);
            glVertex2f(-0.2, 0.2);
   再利用 glRotatef(angle,0,1,0); 讓方形繞著y軸旋轉。



3-1
     因為怕畫面會亂掉所以:
 (1)清畫面: glClear(GL_COLOR_BUFFER_BIT);
 (2)備份Matrix: glPushMatrix();程式旋轉裡面
 (3)還原Matrix: glPopMatrix(); 
 (4)沖出來  glFlush();

3-2
     利用  GL_LINE_LOOP  和  GL_POLTGON  畫出線和面構成的方形
     最後再利用  glRotatef(angle,0,1,0);   讓方形繞著y軸旋轉。


4.利用 glBegin(GL_POLYGON);  來畫出面和線 描繪出具有立體感的方形,並且可以讓它旋轉
            glBegin(GL_QUAD_STRIP);
            glBegin(GL_LINES);

5.利用函式 motion 來改變x和y的數值,並且可以讓物體跟著滑鼠做旋轉。



6.為了要讓物體看起來更有立體感(讓物體不要有透明的感覺),在
   display 函式加入 glEnable(GL_DEPTH_TEST);
                                 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
   後不要忘了在  main()  函式裡面, glutInit() 之後 , glutCreateWindow() 之前,要加入一行
    glutInitDisplayMode(GLUT_DEPTH);  為了讓 window 有 3D深度的功能










沒有留言:

張貼留言