2017年9月21日 星期四

周欣融 week02

Glut program -- Show teapot
  1. 按照上禮拜的筆記建立GLUT project
  2. 刪減預設程式碼,改動至如下:
#include <GL/glut.h>
void display(void)
{
    ///設定背景顏色(R, G, B, 透明度)
    glClearColor(0,1,0,0);
    ///清除背景buffer
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    ///設定茶壺顏色 (R, G, B)
    glColor3f(1,0,1);
    ///畫茶壺 (指定茶壺大小比例)
    glutSolidTeapot(0.3);
    ///刷新 延伸閱讀(雙緩衝區繪圖)
    glutSwapBuffers();
}

int main(int argc, char *argv[])
{
    ///初始化glut
    glutInit(&argc, argv);
    ///設定顯示模式
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    ///創建glut 3D視窗
    glutCreateWindow("GLUT Shapes");
    ///呼叫display function
    glutDisplayFunc(display);
    ///主要迴圈,一直跑
    glutMainLoop();

    return EXIT_SUCCESS;
}



結果:


---------------------------------------------------------------------------------------------------------------------

Glut program -- Show triangle


#include <GL/glut.h>
void display(void)
{
    ///設定背景顏色(R, G, B, 透明度)
    glClearColor(0,1,0,0);
    ///清除背景buffer
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    ///設定圖形顏色
    glColor3f(1,0,1);
    ///畫三角形
    glBegin(GL_POLYGON);///開始畫(多邊形)
    glVertex3f(1,1,0);  ///頂點1
    glVertex3f(-1,1,0); ///頂點2
    glVertex3f(0,-1,0); ///頂點3
    glEnd();                 ///結束畫
    ///刷新
    glutSwapBuffers();
}

int main(int argc, char *argv[])
{
    ///初始化glut
    glutInit(&argc, argv);
    ///設定顯示模式
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    ///創建glut 3D視窗
    glutCreateWindow("GLUT Shapes");
    ///呼叫display function
    glutDisplayFunc(display);
    ///主要迴圈,一直跑
    glutMainLoop();

    return EXIT_SUCCESS;
}


結果:

沒有留言:

張貼留言