チュートリアル 4: サウンドと音楽

チュートリアル 4: サウンドと音楽
大抵の良くできたゲームには音楽やサウンドエフェクトが、または少なくともどちらか一方があ
ります。
DSLua はサウンドエフェクトとして .RAW 形式を,音楽として .MOD 形式のみ対応しています。
.MOD ファイルは The Mod Archive か Google で検索すれば見つかります。
または、好きなら自身で作ってはいかがでしょうか。
RAW ファイルは .WAV か .MP3 から変換できます。
私は無料の Smart Audio Converter を使用しましたが、探せばもっと良いものがあるかと思います。
注意:現時点では Dualis はどちらの再生にも対応していません。
MOD ファイルは度々スローダウンし、RAW ファイルは常にスローダウンしてしまいます。
まず、音楽の再生方法から説明します。心配しなくても結構です。とても簡単です。
はじめに MOD ファイルを読み込みます。ファイル名が「music.mod」なら、以下のようにします。
ModSongname = Music.LoadMod( "music.mod" )
そして、再生するには ModSongname:Play() を使用します。
停止するには ModSongname:Stop() を使用し、一時停止する場合は ModSongname:Pause() を使用し
ます。
プログラムの最後か、以降 MOD ファイルを再生しない場合は、ModSongname:Free() を使用してメ
モリを開放してください。
以下にこれら全ての機能を利用したデモンストレーションのプログラムを記載します。
A で音楽を再生し、B で停止します。L で一時停止し、スタートでプログラムを終了します。
-- 音楽ファイルを読み込み
ModMusic = Music.LoadMod( "music.mod" )
while Pads.Start() == false do
if Pads.A() then
ModMusic:Play()
end
if Pads.B() then
ModMusic:Stop()
end
if Pads.L() then
ModMusic:Pause()
end
end
ModMusic:Free()
サウンドエフェクトもほぼ同じです。が、一度再生したら停止したり一時停止したりすることが
できません。
1
音楽の再生方法が分かったなら、サウンドエフェクトの再生方法はこのコードを見ればすぐに分
かるでしょう。
-- サウンドエフェクトを読み込み
SndGun = Sound.LoadRaw( "gun.raw" )
SndVoice = Sound.LoadRaw( "voice.raw" )
while Pads.Start() == false do
if Pads.A() then
SndGun:Play()
end
if Pads.B() then
SndVoice:Play()
end
end
SndGun:Free()
SndVoice:Free()
2