MetaSound ページ は、異なるハードウェア パフォーマンス レベルをサポートするために使用できる MetaSound のバリエーションです。ページを使用すると、MetaSound 入力値のセットや完全に異なる MetaSound グラフを定義し、プラットフォーム ターゲットまたはランタイム ロジックに基づいてページ間を切り替えできます。
プラットフォームはページと一対一ではなく、つまり複雑さ、CPU 使用量、メモリ使用量などに基づいて、マップすることができます。
アクティブな MetaSound インスタンスを変更するためにページを使用できません。ページのデータ交換は、MetaSound インスタンスの実行前に発生するためです。
ページを使用する
プロジェクト設定を調整する
ページを作成し、[Project Settings (プロジェクト設定)] で各種設定を調整できます。
- [Edit (編集)] > [Project Settings (プロジェクト設定)] を選択します。
- パネルの左側の [Engine (エンジン)] 見出しにある [MetaSound] を選択します。
- [Pages (Experimental) (ページ (実験的機能))] セクションで次の設定を変更します。
- [Page Settings (ページ設定)] の [+] ボタンをクリックして配列にページを追加します。
- 新しい配列要素を展開します。
- [Name (名前)] を「Low」、「High」、「Mobile」などに設定します。配列でのページの順番は重要です。詳細は「フォールバック時の処理」を参照してください。
- [Targetable (ターゲット設定可能)] が true である場合は、ページのターゲットが全プラットフォームになります。特定のプラットフォームをターゲットにする場合は、[Targetable] の [+] ボタンをクリックして、ターゲット プラットフォームを選択します。対象が複数である場合は、この手順を繰り返します。
- 特定プラットフォームでのクックをページから除外する場合は、[Exclude from Cook (クックから除外)] の [+] ボタンをクリックして、除外するプラットフォームを選択します。対象が複数である場合は、この手順を繰り返します。
- 「Default」以外のページをターゲットにする場合は、[Target Page Name (ターゲットページ名)] を使用するページに設定します。この設定の詳細については、「ターゲットページ名」を参照してください。
Default ページを削除することも、名前を変更することもできません。
フォールバック時の処理
ターゲット ページがアクティブ プラットフォーム用に実装されていない場合は、MetaSound は ページ設定 のクック済みページのインデックス順を使用します。具体的には、MetaSound は実装されているページでインデックス順に最小から 2 番目のページにフォールバックします。フォールバックが見つからない場合は、MetaSound はデフォルトの実装を使用します。
ターゲットページ名
[Target Page Name (ターゲットページ名)] 設定では、MetaSound を実行するときに使用するページをセットします。このターゲットは、プレイインエディタ (PIE) での再生中に反映されます。
ターゲットページ名を次の方法で設定できます。
- プロジェクト設定を使用
- プラットフォームの
.iniファイル ([PROJECT_ROOT]\Platforms\[PLATFORM_NAME]\Config\[PLATFORM_NAME]MetaSound.ini) - コンソール変数
cvar au.MetaSound.Pages.SetTarget [PAGE_NAME]を使用 - ブループリントまたは C++ (ランタイム時) を使用
ターゲットページ名も、デフォルトで MetaSound エディタ にも反映されますが、他のプラットフォームとページでもオーディションできます。詳細については、「エディタでページをオーディションする」を参照してください。
MetaSound グラフのページを作成する
プロジェクト設定でページをセットアップした後に、MetaSound ソースでそれらを使用して、[Pages] タブでグラフにパッチを適用します。
[Pages] タブで、次の処理を実行できます。
- [Add Page Graph (ページグラフを追加)] ドロップダウンから対象を選択することで、新規ページを追加します。
- 対象の右にある ゴミ箱 ボタンを選択して、ページを削除します。
- 対象の左にある [<-] ボタンを選択することで、ページにフォーカスします。
ページを追加する場合は、既存のグラフを新規ページにコピーします。その後、アクティブ グラフへのどの変更も、フォーカスされたページにのみ適用されます。このワークフローを使用して、最高条件のサウンドを作成し、そこまで複雑ではないグラフを必要とする、バリエーション向けページを追加します。
すべてのページで同じ入力と出力のメンバー (インターフェースなど) を共有します。ただし、各変数はグラフごとに設定されます。
MetaSound グラフ パネル左下隅で現在フォーカスされているページを確認できます。
Metasound 入力のページを作成する
グラフ バリエーションの他に、ページごとに異なるデフォルト入力値を設定することもできます。たとえば、対象ターゲット ページの異なるリソース要件に基づいて、配列で異なる数のサウンド ウェーブを指定できます。
ページ設定した入力を作成するには、次の手順を実行します。
- [Members (メンバー)] パネルで、入力を選択します。
- [Details (詳細)] パネルで、[Default Value (デフォルト値)] > [Add Page Default Value (ページデフォルト値を追加)] ドロップダウンをクリックして、関連するページを選択します。これによって、新しい [Default Value] エントリが作成されます。
- 新しいエントリの値をセットします。
グラフなし入力のフォールバック
ページに関連付けられた入力のバリエーションは、グラフのバリエーションから分離されます。ページ設定されたグラフが指定のページで利用できない場合は、次に利用可能なページ設定グラフが、関連する入力のバリエーションとともにフォールバックとして使用されます。
たとえば、「Medium」ページのグラフで、「Low」ページ設定の入力を使用するには、次の手順を実行します。
- プロジェクト設定で、「Medium」、「Low」の順でそのページを作成します。
- MetaSound で次の手順を実行します。
- 「Medium」ページ設定のグラフを作成します。
- 「Low」ページ設定の入力を作成します。
詳細は「フォールバック時の処理」を参照してください。
エディタでページをオーディションする
デフォルトで、MetaSound エディタでの MetaSound のオーディションは、PIE でのプレイ内容に対応します。
ただし、[Audition (オーディション)] メニューでこの機能をオーバーライドできます。ここで次の内容を設定できます。
- Audition Platform (オーディション プラットフォーム) - プラットフォームを設定し、関連ターゲットを適用して、オーディションする設定をクックします。
- Sync With Graph Page (グラフページと同期) (デフォルトで有効) - 有効である場合は、MetaSound エディタで MetaSound をプレイすると、フォーカスされたページのグラフがプレイされます。無効にされた場合は、プレビューする特定の Audition Page (オーディションページ) を選択できます。
ページが選択したオーディション プラットフォームのターゲット ページではない場合は、[Play (プレイ)] ボタンは黄色の警告アイコンに変わり、関連ツールチップが表示されます。ただし、依然としてプレイできます。
オーディション メニューの設定は [Editor Preferences (エディタの環境設定)] > [MetaSound Editor (MetaSound エディタ)] にあります。
制限事項
- MetaSound プリセットに対してページを追加または削除することはできませんが、ページ入力デフォルトをオーバーライドできます。
- インターフェース入力のデフォルトではページ入力のデフォルトをサポートしません。
- C++ ノード クラスではページ入力のデフォルトをサポートしません。
- プロジェクトはエディタでのオーディション動作を変更できません。