アクリル レイヤー システム — MRTK3

注意事項

MRTK チームが取り組んでいる機能の中には、完全には詳細が具体化されていなくても、多数の初期値が含まれているように見えるものがあります。 この種の機能は、コミュニティで早期に確認していただきたいと考えているものです。 これらはサイクルの初期段階にあるため、Experimental とラベル付けすることにより、今後も進化し、時間の経過と共に変更される可能性がある機能であることを示しています。

この試験的な機能により、サーフェスが半透明 (すりガラス状) で表示されます。 アクリル アセットは、Windows のアクリル素材のように、バックプレートにぼやけた背景効果を作るために使用できます。 これらのアセットでは、ユニバーサル レンダー パイプラインを使用する必要があります。

Acrylic Layer System Sample

重要

この機能にはユニバーサル レンダー パイプライン 10.6.0 以上が必要であり、モバイル デバイスではコストが高くなる可能性があります。

使用法

特定のアクリル レイヤーには、そのレイヤーのバックプレートとすべての UI オブジェクトを含む独自のレンダー レイヤー (またはレイヤーのセット) が必要です。 レンダー レイヤーは、アクリル レイヤー マネージャーでアクリル レイヤーの "レンダー レイヤー" プロパティに割り当てます。 レイヤーは、ぼかした背景マップから前景要素を除外するために使用します。

アクリル レイヤー システムは、次のコンポーネントで構成されます。

アクリル ヘルパー

このコンポーネント (スクリプト) を、アクリル素材を使用するすべてのバックプレートに割り当てます。 このコンポーネントによって、オブジェクトが有効または無効になるたびに、アクリル レイヤーマネージャーに通知されます。 現在、アクリル シェーダーでは 2 つのレイヤー (0 と 1) をサポートしています。

アクリル レイヤー マネージャー

アクリル素材で使用されるぼかし背景マップの作成と更新が管理されます。 マネージャーでは、アクリル ヘルパー コンポーネントと連携して、シーンで現在使用されているアクリル レイヤーに対して実行される余分な処理を制限します。 シーンにはマネージャーのコピーが 1 つ必要です。

マネージャーでは、背景画像をキャプチャする 2 つの方法をサポートしています。

  1. フレームバッファーのコピー: 一連のレンダラー機能パスを使用して、URP レンダリング中に現在のフレームバッファーのダウンサンプリングされたコピーを記録します
  2. テクスチャにレンダリングする: バックグラウンド オブジェクトの個別の縮小解像度画像をレンダリングします

キャプチャした画像は、レイヤーごとのぼかし設定に基づいてぼかされます。 ぼかしマップがフレームごとに更新されない場合、ぼかし処理はキャプチャ後の次のフレーム中に適用されます。

また、更新されたマップを複数のフレームにわたって徐々にブレンドするオプションもあります (マップがフレームごとに更新されない場合)。

詳細な使用方法

エディター オプション

アプリが再生されていないときにアクリル レイヤーを有効のままにするには、アクリル レイヤー マネージャー コンポーネントの [エディターで保持] オプションを使用します。

注意

このオプションは、Copy Framebuffer キャプチャ メソッドでのみ機能します。

プラットフォーム固有の設定

マルチビュー ステレオを使用して Quest 用にビルドする場合は、アクリル レイヤー マネージャー コンポーネントで次のコマンドを使用します。

Capture Method = Copy Framebuffer Filter Method = Kawase Update Period = 1

サンプル

アクリル レイヤー システムのデモンストレーションについては、"アクリル (試験段階)" のサンプルを参照してください。

追加の参考資料

Windows のアクリル素材高速リアルタイム GPU ベースの画像ぼかしアルゴリズムの研究