スポンサーサイトxWMA鳴った
しつこくXAudio2関連。
今回でしばらくは触らなくなるかと思いますのでご勘弁を! 結局xWMA再生に対応したのでした。 実際作ってみた感触、Wave再生が出来ていればちょっとした改造で出来ます。 DirectXのサンプルも参考に見ましたけど、 Wave再生は相変わらずチャンクがどうのこうのとかいじって鳴らすんですね。 この辺をDirectXさんが代行してくれればいいのに…ってそれがXACTの方なのかな? ともあれ、再生はできたということで、 フリージアを使って非圧縮Wave, Ogg, xWMAを比較検証してみました。 素材数はSE, ボイス合わせて246個。
まずはそのまんまな非圧縮Wav。 そしてOggはファイルサイズは圧縮がかかってるものの、 ロード時にデコードしてるためバッファサイズはWavと同じになってます。 この数字だけ見るとxWMAのパフォーマンスは圧倒的ですね。脅威の9割圧縮。 ロードも体感で分かる程度に早くなってます。 メモリ負荷的には優秀ということが分かりました。 あとの問題はSE全部こうしてしまった場合のCPU負荷なのですが、 前回、「ドキュメントによると負荷は小さい」とか書いてしまったわけですが、 具体的にはこう書いてあるのです。 『Windows の場合、3GHz Prescott CPU でボイスあたり 約 0.35% のごくわずかな負荷が加わります。』 これって改めてよくよく考えると100音鳴ったらCPU30%占有ですよ。アホか! まぁ実際には同時発音がどの程度あるかはアプリの特徴に左右されますし、 (フリージアだと結構鳴ってる状態でも大体16音前後) マルチコアCPUに対して効率的に分散がかかるのであれば問題ないとも思えます。 そもそものメモリ負荷ですが、大体の同人というゲーム規模なら Windowsでは気にするレベルに達さないという見方もありますので、 どれを選んでも実行には耐え得るというのが個人的な見解ですかねー。 いずれにせよフリージアではXAudio2の実装は見送る予定です。 コメントの投稿トラックバック
|
|