2024年4月25日 星期四

04/25T-R-T

 1.week10-1_glutWireCube_myBody_myArm

新增glut專案,貼上上周week09-3的程式碼

要把void display()改寫一下,呼叫myBody() myArm()

void myBody()

{

    glPushMatrix();

        glColor3f(1,0,0);

        glutWireCube(0.6);///myBody()

    glPopMatrix();

}

void myArm()

{

    glPushMatrix();

        glColor3f(0,1,0);

        glScalef(1,0.4,0.4);

        glutWireCube(0.3);

    glPopMatrix();

}


2.week10-2_rotate_myArm

新增glut專案,貼上week10-1_glutWireCube_myBody_myArm的程式碼

外面加上float angle=0;//旋轉的角度

在main()加上glutIdleFunc(display);//有空就旋轉

在display()裡,myArm()的前後,要加上glPushMatrix() glPopMatrix()和glRotatef(angle++,0,0,1);


3.week10-3_rotate_translate_myArm

新增glut專案,貼上week10-2_rotate_myArm的程式碼

加上glTranslatef(0.15,0,0);

4.week10-4_translate_rotate_translate_myArm

新增glut專案,貼上week10-3_rotate_translate_myArm的程式碼

加上最後一行glTranslatef(0.3,0.3,0);放最上面掛上去

5.week10-5_TRT_TRT_myArm

新增glut專案,貼上week10-4_translate_rotate_translate_myArm的程式碼

把整套glPushMatrix() glTranslatef() glRotatef() glTranslatef() myArm() glPopMatrix()

6.week10-6_left_right_myArm
新增glut專案,貼上week10-5_TRT_TRT_myArm的程式碼

7.week10-7_mouse_motion_angle_myArm

新增glut專案,貼上week10-6_left_right_myArm的程式碼

想要用mouse motion來操控,所以angle++都改成angle

在main()加glutMotionFunc(motion);

加一個void motion(int x,int y)函式

8.week10-8_mouse_motion_angle_2_myArm

新增glut專案,貼上week10-7_mouse_motion_angle_myArm的程式碼

把display()裡面的左邊的angle改成-angle

9.week10-9_PlaySound

新增glut專案,貼上week10-8_mouse_motion_angle_2_myArm的程式碼
在#include的地方,加上#include <windows.h>或#include <mmsystem>
在main()的第1行,加入PlaySound("你的wav檔.wav",NULL,SND_ASYNC);
把老師傳的horse.wav放在C:根目錄裡

沒有留言:

張貼留言