2018年5月11日 星期五

Week11 徐如君

聲音,音效,音樂

1.先到上課用軟體下載lesson的檔案並解壓縮後打開Lesson就會顯示下圖
 

實作:PlaySound( ),CMP3_MCI.h

1.打開Codeblocks並開啟GLUT的專案,並加入兩行程式碼
  1include<mmsystem.h>///(1)使用多媒體系統
  2.  PlaySound("Pup.wav",NULL,SND_ASYNC);///(2)呼叫播放聲音的函式
  

2.請開啟Lesson的data的資料夾裡有聲音檔複製到執行目錄底下

   C:\Users\student\Desktop\freeglut\bin

3.SND SYNC V.S. SND ASYNC  
前者的是同步,後者為不同步 
4.SND LOOP 可連續撥放聲音
 (要用SND ASYNC的模式)

鍵盤鋼琴

1.先從上課用軟體下載鋼琴鍵盤的聲音檔並複製到

   

   C:\Users\student\Desktop\freeglut\bin
  
2.然後加這些程式碼並先執行

   case'1':PlaySound("Do.wav", NULL, SND_ASYNC);
           break;
        case'2':PlaySound("Re.wav", NULL, SND_ASYNC);
           break;
        case'3':PlaySound("Mi.wav", NULL, SND_ASYNC);
           break;
        case'4':PlaySound("Fa.wav", NULL, SND_ASYNC);
           break;
        case'5':PlaySound("Sol.wav", NULL, SND_ASYNC);
           break;
        case'6':PlaySound("La.wav", NULL, SND_ASYNC);
           break;
        case'7':PlaySound("Si.wav", NULL, SND_ASYNC);
           break;
3.因為這行程式碼在太後面
   #include<mmsystem.h>///(1)使用多媒體系統
 所以要放前面一點並再次執行即可
  


  複習T-R-T轉動的部分

1.T-R-R的轉動的程式碼
  
程式碼如下
glPushMatrix();
  glTranslatef(-0.5,0.35,0);
  glRotatef(-angle,0,0,1);
  ///注意:旋轉角度可能是負的
  也可以寫成glRotatef(angle,0,0,-1);
  glTranslatef(-0.3,0,0);
   drawArm(); ///畫
glPopMatrix();

自己來的程式播放聲音檔

1.開啟新專案
 
2.點選Console application的圖示

3.會出現以下的畫面
   
4.把程式碼全刪除並輸入以下的程式碼

    程式碼如下
#include<windows.h>///(0)要使用windows.h裡的定義
#include<mmsystem.h>///(1)多媒體系統
#include<stdio.h>

int main()
{
   PlaySound("forest,wav",NULL,SND_SYNC);///等它
   printf("hello world\n");
}

5.可以在程式碼再做些改變

 程式碼如下
   #include<windows.h>///(0)要使用windows.h裡的定義
#include<mmsystem.h>///(1)多媒體系統
#include<stdio.h>

int main()
{
   PlaySound("forest,wav",NULL,SND_ASYNC);///等它
   printf("hello world\n");
 
   int n;
   scanf("%d",&n);
}   

沒有留言:

張貼留言