- 追加された行はこの色です。
- 削除された行はこの色です。
とりあえずサウンドを鳴らすには・・・?
SIZE(20){ COLOR(#ffaa00){PlaySound関数}}1行でサウンドファイルからの音データを鳴らすことができます
ただし任意箇所にシークするなどの細かい制御ができず、SIZE(20){ COLOR(#ffaa00){複数の音を同時に鳴らせない}}のが欠点です
また、wavファイルしか再生できません
さらにファイルを開いてデータを読み込んで鳴らすという処理を毎回行うため、処理が重いです
wavファイルはプロジェクトと同じフォルダに入れてください
今回使うファイルは次のようになってます。どぞー(-ω-)つ旦
・&ref(sound.cpp);
・&ref(katana.wav);
・&ref(bomb.wav);
zipでほしい人はこちら
・&ref(sound.zip);
// PlaySound関数にはwindows.hとwinmm.libが必要
#include <windows.h>
#include <tchar.h>
#pragma comment(lib,"winmm.lib")
int main(){
// wavファイル読み込み、ループモード、非同期で先頭から再生(途中から再生できない)
// SND_FILENAME オプションでファイルから再生
// SND_ASYNCオプションで非同期再生
// SND_LOOPオプションでループ再生
PlaySound(_T("katana.wav"),NULL,SND_FILENAME | SND_ASYNC | SND_LOOP);
// main側の処理を10秒止める
Sleep(10000);
// 再生停止
PlaySound(NULL,NULL,0);
// PlaySoundは同時に複数の音を鳴らすことができない
// 非同期モードで再生し、新しいサウンドを鳴らそうとすると再生中のサウンドが停止する
// SND_SYNCオプションで同期再生
PlaySound(_T("bomb.wav"),NULL,SND_FILENAME | SND_SYNC );
PlaySound(_T("katana.wav"),NULL,SND_FILENAME | SND_SYNC );
return 0;
}
複数鳴らせないので正直このままではゲームの効果音とか鳴らすのに使い物になりませんが、
1行でサウンドを鳴らせるのはお手軽です
複数音鳴らすのは結構大変なので、もっとずっと後の回で説明します
前:DirectX講座0回
次:DirectX講座2回
#vote((^ω^)楽勝[8],(-ω-)zzZ[10],みっくみくにしてやんよ[38])
|(^ω^)楽勝|44|
|(-ω-)zzZ|32|
|みっくみくにしてやんよ|213|