1

最近、 を使用して開発しているゲームにサウンドを追加していAVAudioPlayerます。サウンドを再生すると、フレームレートの点でゲームが遅くなることが多いことに気付きました。メソッドを使用してパフォーマンス コストを削減しようとしました[sound prepareToPlay]が、違いはないようです。重大なパフォーマンス コストなしでサウンドを再生する方法を知っている人はいますか? どんな助けでも大歓迎です。

4

1 に答える 1

3

AVAudioPlayerはパフォーマンスの面で非常に高価であり、ラグの問題があります。また、AVAudioPlayerDelegateデリゲートのaudioPlayerDidFinishコールバックでリリースする必要があるため、リークに関してはあまり信頼できません。

AVAudioPlayerは、ループ可能な長い音楽をバックグラウンドで再生するのに最適です。短いサウンドエフェクトを再生するには、AudioToolbox.hのAudioServicesPlaySystemSoundメソッドを使用する方がパフォーマンス的に安価です。これを行うには、SystemSoundIDを宣言する必要があります。

このリンクを参照できます。http://blogs.x2line.com/al/archive/2011/05/19/3831.aspx

于 2012-09-26T06:41:06.337 に答える