2024年4月25日 星期四

week10

 


安裝free glut到桌面
File-New-Project,GLUT專案week10-1_glutWireCube_myBody_myArm
貼上上週的week09-3_glutWireTeapot_glutWireCube
要把void display()改寫一下, 呼叫myBody() myArm()




File-New-Project,GLUT專案 week10-2_rotate_myArm
貼上week10-1的程式
外面加上float angle = 0;
在main()加上glutIdleFunc(display);
在display()裡,myArm()的前後要加上glPushMatrix() glPopMatrix()和glRotatef(angle++,0,0,1);

File-New-Project,GLUT專案 week10-3_rotate_myArm
貼上week10-2的程式
加上glTranslatef(0.15,0,0);


File-New-Project,GLUT專案week10-4
貼上wek10-3的程式
加上最後一行glTranslatef(0.3,0.3,0)放最上面 掛上去


File-New-Project,GLUT專案week10-5
貼上week10-4的程式
把整套glPushMatrix();glTranslatef();glRotatef();glTranslatef();myArm();glPopMatrix
要插在中間


File-New-Project,GLUT專案week10-6
貼上week10-5的程式


File-New-Project,GLUT專案week10-7
貼上week10-6的程式
想要用mouse motion 來操控,所以angle++都改成angle(不要++)
在main()加glutMotionFunc(motion);
加一個void motion(int x,int y)函式


File-New-Project,GLUT專案week10-8
貼上week10-7的程式
把display()裡面的左邊的angle改成-angle
(讓左右的角度,正負相反)


File-New-Project,GLUT專案week10-9
貼上week10-8的程式
在#include 的地方,加上#include<windows.h> 或#include <mmystem.h>
在main()的第一行,加入PlaySound("你的wav檔wav", NULL, SND_ASYNC);
把老師傳給你的horse.wav放在C:根目錄裡










沒有留言:

張貼留言