2022年4月25日 星期一

09160074 廖均翰 week10

  講義:https://jsyeh.org/3dcg10/

●Text Background

貼圖貼到四邊形, 變成背景。把上週的OpenCV程式稍微修改即可,將display函式修改成下列程式碼
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
        glBegin(GL_POLYGON);
            glTexCoord2f(0,1); glVertex2f(-1,-1);
            glTexCoord2f(1,1); glVertex2f(+1,-1);
            glTexCoord2f(1,0); glVertex2f(+1,+1);
            glTexCoord2f(0,0); glVertex2f(-1,+1);
        glEnd();
        glutSwapBuffers();

























把貼圖貼到圓形體,在int myTexture(char * filename)前先新增一行GLUquadric*sphere=NULL;,在display函式中只留下glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)和glutSwapBuffers(),並新增gluQuadricTexture(sphere,1)和gluSphere(sphere,1,30,30),並在main函式中增加sphere=gluNewQuadric()
在display函式中增加glPushMatrix()、glPopMatrix()以及glRotatef。glutMainLoop()之前要glEnable(GL_DEPTH_TEST)開啟3D深度測試的功能,才會正確畫出3D的前後關係

























宣告一個變數angle=0,並新增一個Rotatef旋轉angle度,並在最後angle++,如果轉太快,angle可以加小一點

























●Texture到Model

從講義下載data資料夾,解壓縮後丟到freeglut資料夾內的bin檔案夾

沒有留言:

張貼留言