この講座をここまで理解していただければ、グラフィックに関しては問題ないと思います。
そこで、今ゲームを作るのに足りない者は何かと考えると、それは、音、な訳です。
効果音のように、一音が短いものに関して言えば、Quadruple D 3に含まれるDDSDをサンプル通り使うのが便利です。
ただし、DDSDはそのままだとWAVファイルしか扱えないので、高音質で5、6分あるような曲をBGMとして流すのには不向きです。
WAVを使用すると同梱ファイルサイズが少なくとも何十MBと、巨大になりますから、WAV以外のフォーマットを使用するべきです。
一般に、ゲーム用音楽として使われる音楽フォーマットとしては、MIDI・MP3・Ogg Vorbisがあります。
それぞれの特徴を挙げます。
MIDI:音自体ではなく、音色と五線譜と音色効果を情報として持つ。再生する側の環境によって聞こえる音も再生負荷も全然違う。ファイルサイズは数十〜数百KB程度と極小。いまではやや時代遅れ。
MP3:皆さん御存知の非可逆圧縮フォーマット。パテントの呪縛があり、MP3を同梱した作品はある数以上配布するとライセンス料を支払う義務がある。ファイルサイズは数MB〜10MBくらい。
Ogg Vorbis:MP3の陰に隠れてイマイチメジャーになれない非可逆フォーマット。ただし、音質はMP3に決して劣るものではなく同じWAVファイルをエンコードするとむしろ若干上と評価されることが多い。さらに完全なパテントフリー。ファイルサイズは数MB〜10MBくらい。
今回はOgg Vorbisを使います。
MIDIでは、再生される音色は環境によって全然違いますし、MP3だと、ライセンスが問題になります。
たとえばフリーで作ったゲームがたくさんダウンロードされたせいで、ライセンス料を請求される可能性が出てくるというのは、結構馬鹿らしいとは思いませんか。
その点、Ogg Vorbisは、完全なパテントフリーですし、エンコーダも無料で公開されていますし、Delphi用の再生ライブラリも公開されています。
今回、DelphiでのOgg Vorbisの再生には、Ko-Taさんが公開されているwuAlphaOggを使います。
wuAlphaOggは、
簡単にインストール方法を説明すると、解凍後、FFTLib.pas・OggDataLib.pas・OggPlayerLib.pas・OggWuvorbisLib.pasを、Delphiのライブラリパスの通ったフォルダにコピーしてください。
ここまで読んできてライブラリパスの通し方がわからない人もいないと思いますが、もしわからなかったら、Quadruple Dのマニュアルを参考にして下さい。
また、wuAlphaOggをより簡単に使うために、wuAlphaOggを薄くラッピングしたクラス(PNAlphaOgg001.zip)を用意しました。
今回これを使用しますので、先ほどコピーしたフォルダと同じフォルダに解凍して置いて下さい。
このクラスを使用することによって、若干面倒な初期化作業等を省くことが出来ます。
なお、PNAlphaOgg001.zipに含まれるソースコードに関しては、修正BSDライセンスに準じるものとしますが、この講座で使用する分には気にしなくて構いません。
各自準備して下さい。
この講座では、wuAlphaOggに同梱されているur_beijing.oggという曲ファイルを使用することにします。
なお、2004年末現在、自分でOgg Vorbisファイルをエンコードして作るというのであれば、rarewaresで公開されているoggdropXPd V.1.7.11 using aoTuVb3をお勧めします。
英語版ですが、音質での評価が高いです。
googleで検索すると、日本語化パッチも容易に見つかると思います。