2024年5月6日 星期一

Sean的電腦圖學日誌 week12

 glPushMatrix();

    glTranslatef(+1,-1,0);

    glRotatef(-20,0,0,1);

    glTranslatef(+0.5,+1,0);

    drawHand();

glPopMatrix();


#week12-1_obj_gundam_hand1_hand2

0.安裝freeglut,把lib\libfreeglut.a複製成libglut32.a

1.OpenCV要裝起來,記得勾add path,不要改目錄重開codeblocks

2.codeblocks setting-compiler加入3個設定:

-Search directories 的compiler要設C:\OpenCV2.1\include

-Search directories的Linker要設C:\OpenCV2.1\lib

-Linker setting 要設cv210 cxcore210 highgui210


再把GitHub上的程式載下來


1.用week11-3改week12-1_obj_gundam_hand1_hand2

2.把.cbp,改檔名

3.用CodeBlocks開啟.cbp







#week12-2_obj_gundam_upper_lower_hand

0.先把week12-1複製,改名

1.改程式碼, 多宣告2顆指標


再把drawmodel()複製兩份,分別叫void drawUpper(){...}和drawLower(){...}

裡面的pmodel都改成upper或lower檔名


利用maya裁切模型,匯出使用obj檔


2.最後改程式碼把drawLower()調好再掛到drawUpper()








使用T-R-T的轉動
#week12-3_obj_gundam_body_upper_lower
0.把week12-2_obj_gundam_upper_lower_hand目錄複製改成week12-3_obj_gundam_body_upper_lower

Maya切出身體body.obj
再把void drawBody()複製出來, 改用body.obj 和 body body body






#week12-4_keyboard_angleID_mouse_motion_angle
0.複製
1.改名
2.Title

再於main()裡, 註冊glutKeyboardFunc(keyboard)和glutMotionFunc(motion)
前面的float angle=0;改成用陣列來做事float angle[20];
int angle=0;
最後, 把display()裡,改成angle[0]和angle[1]

沒有留言:

張貼留言