2022年5月30日 星期一

Qinye_week15

    111/05/30上課筆記

WEEK15-1播聲音、播MP3

1.新增一檔案week15-1_playsound.cpp,複習上週 mmsystem.h,這週使用windows.h
-若沒設定compile link則不會跳出持執行檔=>為compile成功,但是link設定失敗
///.c .cpp =compile=> .o =link=> .exe
-若不換電腦,可永久寫有聲音的程式碼
-進入settings->compile->link settings,新增winmm
*winmm=win(windows)+mm(multimedia)
-會跳出一聲警示音,因為沒有正確的檔案
-將老師給的當案下載後放入與執行檔同資料夾
-可播放羊叫聲
2.再新增一檔案week15-2_SND_SYNC_SND_ASYNC.cpp,練習非同步
(不懂要補)
///week15-2 SND_SYNC要等待同步
///vs.
///SND_ASYNC 不用等待、不同步
3.新增一檔案week15-3_mp3.cpp,換成使用mp3格式的檔案
-將CMP3_MCI.h和07042111.mp3兩個檔案放入同目錄
-mp3檔案小(有壓縮) vs. wav檔案大(原始資料)

WEEK15-2 播放動畫

1.新增一專案week15_angles_TRT_again,複製上週week14_TRT_angle_write_and_read的程式碼。
-先註解掉motion中的myWrite()
-在keyboard中增加
再按下r可逐行執行動作,以下為兩個動作釋例。
-按下S可儲存一行座標,按下R可執行一行座標動作

WEEK15-3 機器人擺動作、跳舞(gundam釋例)

1.開新專案,加入glm.h&glm.cpp(source)
-新增glm.cpp進入專案
-更改week15_homework_gundam_parts.cbp中working_dir改為"."
-將freeglut.dll加入程式目錄
-將data/gundam...加入程式目錄

-加入gundam的display(可參考week11)
-執行結果
2.分別讀入切割好的模型
-加入切割關節進data資料夾
-新增各個關節的空指標
GLMmodel * head = NULL;
GLMmodel * body = NULL;
GLMmodel * bot = NULL;
GLMmodel * arm1 = NULL;
GLMmodel * arm2 = NULL;
GLMmodel * hand1 = NULL;
GLMmodel * hand2 = NULL;

-寫一myReadOne函式讀入單一模型
-寫新的display,並用myReadOne讀入
得結果:



沒有留言:

張貼留言