2024年6月6日 星期四

Week16 電腦圖學之我愛果汁

 1.從上課軟體下載freeglut




 2.將壓縮檔解壓到桌面

3.點開freeglut後復製其連結


4.點開lib後將freeglut.a復製


5.改名為libglut32.a (124KB)



6.到codeblock開新的專案 file > project,(檔名為week16-0_simple)




7.opencv安裝


8.選項選2或3
9.不要更換目標資料夾
10.重開codeblocks

11.設定Settings-compiler要加入三個設定


11.1.search 目錄 compiler 的include 目錄 加 C:\OpenCV2.1\include



11.2.search 目錄 linker 的lib 目錄 加 C:\OpenCV2.1\lib

11.3.加入linker 設定的 3個檔名cv210 cxcore210 highgui210

12.將剛剛的專案,先關起來Close Project (不然會被鎖),將目錄從14-2複製到15-1,新檔案名改為15-1,最後再把專案的Title改成 week15-1,用notepad++打開cbp檔把裡面week14-2改為week15-1



13.到老師的網站(https://jsyeh.org/3dcg10/)


 14.下載data,win32


15.解壓縮data.zip,window.zip

16.將data資料夾丟到window裡面(解壓後的檔案)


17.打開Projection

18.到codeblock開新的專案 file > project,(檔名為week16-1_sample_gluLookAt)



19.改變看的位置
20.可以利用鍵盤按鍵來操控所看的視角

21.gluPerspective透視投影,glOrtho 垂直投影,glFrustum比較少用(上下左右近遠共六組參數)

22.到codeblock開新的專案 file > project,(檔名為week16-2_glutReshape_gluPerspective_gluLookAt)


23.貼上11行程式碼
#include <GL/glut.h>
void display()
{
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    glutSolidTeapot(0.3);
    glutSwapBuffers();

}
int main(int argc,char*argv[])
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
    glutCreateWindow("week15-4");
    glutDisplayFunc(display);
    glutMainLoop();
}
24.使用透視投影法從不同的視角看茶壺




25.加上glutInitWindowSize可調整視窗大小且裡面的貼圖不會隨視窗改變而改變


26.到codeblock開新的專案 file > project,(檔名為week16-3_myTexture_id1_id2_glBindTexture)


27.將week05_roating_earth/main.cpp的程式碼貼上
28.將earth.jpg拉到C:/後執行
29.將貼圖分為兩個部分,把視窗變大並把地球貼圖變小,最後將背景的貼圖貼齊整個視窗


30.上傳github







沒有留言:

張貼留言