講義: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檔案夾



沒有留言:
張貼留言