Chiharu の日記

絵描き C/C++ プログラマーの日記です。

Parallel force - パラレル・フォース 〜サウンド周り

サウンド周りの設計に入りました。グラフィックスはとりあえず、ちょっと置いておきます。ゲームのエンジンだといっているのにグラフィックス実装ばかり進んで行くのはあまりにもアレだと感じましたので。
過去の経験から、効果音には DirectSound で、BGM には DirectMusic で良いかなー、とか思っていたら、これらの APIVista 以降では非推奨なんですね。代わりに出てきているのが XAudio と。今だと XAudio2 なのかな。時代は移っていきますねー。
で XAudio さん。ふむ。CoInitialize(Ex) を強要するあたり COM コンポーネントである、と。XBox 360 リリースにあわせてクロス プラットフォームのサウンド API になってるっぽい、と。HAL はないっぽい、と。つまりソフトウェア処理オンリーになったっぽい、と。うん。まぁ、何となく状況は分かりました。ま。DirectSound 関連のドライバ不具合は、DirectDraw のそれと一緒で、尋常じゃないイメージがあったので、ソフトウェア処理のみになったのは素直に歓迎すべき点ですね。
日本語資料が全然ないっぽいのが玉に瑕ですが、まぁ、以前 DX8 リリース頃に DirectShow でキャプチャしてた頃を思えばまだマシかな。英語資料ならあるっぽいし。ちょっと勉強しながら頑張ってみよう。
(追記)
日本語資料がないのは XAudio のようで。XAudio2 については、調べればいろいろと情報が出てきますね。リファレンスも日本語化されてました。これならスムーズに開発できそう。
(追記) (2)
XAudio2 で音が鳴りました。最初、いろいろ試していたときは「ぶぴー」とかよく分からない音が鳴っていたのですが、デバッグしたら「ぴょりーん」という効果音がきちんと鳴りました。良かった良かった。オンメモリ再生については、いったんまとめて、ストリーム再生を検討します。