Xbox 360、Xbox One™、iOS、Android™、PlayStation® 3、PlayStation® 4の各プラットフォームで、プレイヤーはゲームのミュージックを自分の音楽に置き換えられます。どのプラットフォームの場合も、ユーザのミュージックがスタートした時点でミュートする全てのバスのMute for Background Musicオプションを有効にしておく必要があります。複数のバスを選択でき、ミュージックバス以外も選択できます。
プラットフォームのバックグラウンドミュージックオプションに、バスをアサインするには:
Property Editorに、Audio Busを1つロードする。
Mute for background musicオプションを選択する。
ユーザがコンソールのミュージックプレイヤを通して自分のミュージックをスタートさせると、このバスはミュートされる。
Mute for background musicを有効にした時の動作はプラットフォームによって多少異なります。また、サウンドエンジン初期化の時点で追加プログラミングが必要となります。
Xbox 360: 追加作業なし。
PS3®: PlayStation 3でバックグラウンドミュージックのオプションを有効にするには、サウンドエンジンの初期化設定(Initialization settings)の中にあるSwitch (AkPlatformInitSettings::bBGMEnable)も、有効にする必要があります。
Android: Mute/Unmuteアクションは、ユーザがミュージックプレイヤのアプリケーションからゲームに切り替えた時に限り実行されます。つまり、ユーザのミュージックが独自に終了した場合はUnmuteアクションがありません。
iOS: サウンドエンジンの初期化設定でAudioSessionのMixOtherフラグが設定されている場合は、Mute/Unmuteアクションはユーザがミュージックプレイヤのアプリケーションからゲームに切り替えた時に限り実行されます。つまり、ユーザのミュージックが独自に終了した場合はUnmuteアクションがありません。iOS 8以降でAVAudioSessionCategoryAmbientカテゴリを使用している場合、全てのアプリケーションによるオーディオ中断でゲームミュージックのミュートやアンミュートが実行されます。
Xbox One 及び PS4: メーカが追加したDVR機能を使い、ユーザが自分のゲームを録画して公開できます。そこで、ゲームオーディオの一部でありユーザーが置き換えることのできるゲーム音楽の著作権について、法的な問題が発生します。ゲームスタジオ側は音楽をゲームに使う権利を有しているものの、いかなる形式であれエンドユーザーが配信する権利はありません。このため、TCRは、バックグラウンドミュージックの録音を禁止しています。対策としてCPU負荷が最も低いのは、ゲームの音楽を他と分けてミックスすることです。これは、セカンダリアウトプット機能で行います。
オーサリングツール上の操作としては、ミュージックオブジェクトをマスターセカンダリバス、またはその下のバスにルーティングするだけです。サウンドをゲームコントローラでも再生するゲームの場合は、コントローラ用のサウンドもこのバス階層を利用します。音楽がコントローラサウンドに混じったり、その逆が生じたりする心配はありません。リスナーとゲームオブジェクトのペアリングを行い、最終的なルーティングを決めるという追加のステップがあります。これはゲームプログラマーの担当です。プレイヤー同士のコントローラでサウンドの混乱が起きないのと同様に、音楽は内部的に別のミキシング階層に送られるのです。詳細は 「セカンダリアウトプットを理解する」を参照してください。
PS4に関する重要事項 | |
---|---|
Mute for Background Music機能を使うには、コードで |