バージョン
プロジェクト階層にあるオブジェクトの再生方法を決定する前に、以下のセクションをご確認ください。これらのヒントやベストプラクティスは、求める効果を達成するうえで役立ちます。
一般的にペストプラクティスとして、メモリに保存するには大きすぎるサウンド、例えばミュージックやアンビエントルームトーンなど、またボイスも大量にある場合はストリーミングします。しかし、どの方法が最適かを判断する前に、様々な条件を考慮する必要があります。
プロジェクトの開始段階で開発チームと話し合い、以下を決めることをお勧めします:
オーディオ用に使えるストリーミング数
各ストリームの帯域幅
各ストリームを、他と共有するか否か
同時に使えるストリーミング数
プラットフォームのハードドライブからストリーミングするのか、ディスクから直接するのか、それともリモートサーバからするのか
以上の情報を踏まえた上でサウンドのサンプルレートや圧縮形式を考慮して、必要な計算をすれば、そのサウンドをストリーミングするのか否かを的確に判断できます。
同時ストリーミング数が多ければ多いほど、必要なプリフェッチ時間が増えます。まずは短いプリフェッチ時間にし、プロジェクトが進行する中で同時ストリーミングの数が増え始めれば、必要に応じて長くします。
Continuous設定のRandom Containerを、Shuffleモードで使用する目的は、サウンドの繰り返しを防ぐためであり、スコープをグローバルに設定したRandom Container内では、サウンドの繰り返しを避けるようにします。しかしコンテナ内のサウンド数が少なく、このコンテナが再生されるインスタンス数が多い場合は、ある程度の繰り返しが発生するかもしれません。このような状況を避けるには、コンテナ内のサウンドオブジェクト数を、再生インスタンス数の2倍以上にします。例えば、あるRandom Containerの再生インスタンスが3個であれば、繰り返しを回避するため、そのContainerに6個以上の異なるサウンドオブジェクトを入れることをお勧めします。
CPU負荷 - Blend Containerを再生すると、その中のオブジェクトがすべて同時に再生されるため、多大なメモリ負荷につながる可能性があることに注意してください。CPU負荷を削減するためにバーチャルボイス設定を利用することも可能ですが、クロスフェードが短く頻繁な場合は不具合が発生するかもしれません。バーチャルボイスの使い方については「ボリューム閾値とバーチャルボイス」を参照してください。
Switch Containerを使うか、Blend Containerを使うか - ゲーム中にRTPCを設定したSwitch ContainerやBlend Containerを使うと、両者とも同じような結果になることがあります。求める要件に合わせて以下を検討します:
違う時に違うオブジェクトを再生させたい場合は、クロスフェードが重要でなければ、Switch Containerを使う。
全てのオブジェクトを毎回、再生させ、クロスフェードも必要な場合は、Blend Containerを使う。