目次
最適化をしていると、どこかの時点で、システムのリミットをテストしながらリソースバジェットを超過してしまう事態が発生すると思われます。リソース不足になったときにStarvationエラーがよく出てくるため、そうするとリソース使用を下げるか、配分したリソースを増やす必要があります。
通常、スターベーションエラーには2種類あります。
-
Voice Starvation: オーディオバッファが時間内に処理されなかったことを意味します。つまり、今のCPUでは時間内にすべてのオーディオを処理するだけの力がないため、オーディオのグリッチや思わぬ動きが発生するかもしれません。
-
Source Starvation: ストリーミングする内容に対して、ストリーミング用の帯域幅が不足することを意味します。
この2種類のエラーはどちらも、システムに対する負荷が大きすぎることを示しています。水道管を思い浮かべ、あなたのゲームのランタイムのときのオーディオが、水だと思ってください。システムにかかる負荷が大きすぎると、Wwiseはボイスエラーやスターベーションエラーを出して、あなたに通知します。エラーの原因が1つだけということは稀で、複数の要因による総合的な問題の可能性があります。そこで、あなたはProfilerを使い、パフォーマンスに一番弊害となっている要素を調査し、ほかより重要でない要素を限定的に制限したり、そのリソース使用を減らしたりします。どの要素が「あったらいい」程度で、どれが重要すぎて失うことができないのかを判断できるのは、あなたとあなたのチームだけであり、最適化とは、常に優先順位の問題なのです。