2017年3月7日 星期二

Week03 ─ 沒有最狂只有更狂,狂日記

、先到jsyeh.org/3dcg10下載 
data.zip、windows.zip、glut32.dll

然後把下載的檔案都解壓縮之後,
儲存於桌面,glut32置於資料夾中。

開啟Shape.exe,
會跑出一個程式,
右邊的數據可以改變左邊圖形,
利用點、線、面創造出不一樣的圖形。





、複習上週所做的茶壺,試著改變其顏色。

程式碼如下:

#include <GL/glut.h>



static void display(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

    glColor3f(62/255.0,65/255.0,35/255.0); ///顏色(R,G,B)

    glutSolidTeapot(0.3);
    glutSwapBuffers();
}

int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");
    glutDisplayFunc(display);
    glutMainLoop();

    return EXIT_SUCCESS;
}

、glBegin函式


#include <GL/glut.h>

static void display(void)
{
    glBegin(GL_POLYGON);

        glColor3f(1,0,0);  //顏色(R,G,B)
        glVertex3f(0,0,0); //點座標位置(x,y,z)

        glColor3f(0,1,0);
        glVertex3f(1,1,0);

        glColor3f(0,0,1);
        glVertex3f(1,-1,0);
    glEnd();

    glutSwapBuffers();
}

int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");//視窗名稱可自訂
    glutDisplayFunc(display);//使用display函式
    glutMainLoop();

    return EXIT_SUCCESS;
}

沒有留言:

張貼留言