Week 08 課堂內容筆記摘要
作業一 - 利用網頁射擊小遊戲學習如何用程式做出聲音特效
1.前往以下網址(NeHe Lesson 32)並下載Visual C++的zip。
2.解壓縮到桌面並開啟此資料夾內的應用程式檔(桌面 > Lesson32 > lesson32.exe)。
*遊戲操作結果
3.在Lesson32.cpp中使用PlaySound()來做出聲音的特效匯入。
(1)在Lesson32資料夾中找到Data資料夾的shot.wav檔。
(2)開啟codeBlocks並建立Project專案來執行以下程式碼及學習其中意義。
(此程式碼執行檔輸出結果可利用滑鼠點擊來顯示聲音特效)
程式碼
1. 加入 #include <mmsystem.h> /*多媒體系統*/
2. 在int main()函式中加入一程式碼:
glutMouseFunc(mouse); /*滑鼠事件操作*/
3. 新增int Mouse()函式來增加滑鼠事件。
void mouse (int button , int state , int x , int y)
{
PlaySound("C:\\users\\user\\Desktop\\lesson32/Data/shot.wav" , NULL , SND_ASYNC);
/*此函式可載入聲音特效(藍字為完整路徑名稱,斜線須注意)*/
}
★注意:雙反斜線為相同路徑目錄,單斜線為不同路徑目錄~
*延伸學習 - 小鋼琴(Keyboard) >>可利用程式碼及鍵盤操作按出音階聲音。
1. 在int main()函式中加入一程式碼:
glutKeaBoardFunc(keyboard); /*鍵盤事件操作*/
2. 新增int Mouse()函式來增加滑鼠事件。
void keyboard (unsigned char , int x , int y)
{
PlaySound("do.wav" , NULL , SND_ASYNC);
PlaySound("re.wav" , NULL , SND_ASYNC);
PlaySound("mi.wav" , NULL , SND_ASYNC);
PlaySound("fa.wav" , NULL , SND_ASYNC);
PlaySound("so.wav" , NULL , SND_ASYNC);
}
★注意:音樂檔(.wav)須放在 freeglut > bin 的資料夾中~
作業二 - 匯入mp3聲音特效
新增今日所學之以下程式碼及了解其中意義。
程式碼及截圖檔
1. 加入 #include "CMP3_MCI.h" /*此檔案要放在同一個程式碼專案的目錄中*/
(CMP3_MCI與yukai要放在自己已建好的Project專案裡面才可成功編譯)
2. 宣告變數 CMP3_MCI mymp3;
3. 在int main()函式中加入一程式碼:
myMP3.Load("C:\\Users\\user\\Desktop\\04160506/yukai.mp3");
myMP3.Play();
/*代表mp3的匯入讀檔與執行*/
沒有留言:
張貼留言