空間 UI

Android XR 差別化アプリを構築する際は、空間 UI を使用して、ユーザーの物理環境または仮想環境にコンテンツを配置することをおすすめします。アプリを空間パネルやオービターに分割したり、空間エレベーションを追加したりできます(このページで詳しく説明します)。空間動画をデザインに組み込むこともできます。

空間パネル

空間パネルは、Android XR アプリの基本的な構成要素です。これらを使用すると、ユーザーの空間全体にコンテンツが広がる、無制限のディスプレイで XR 差別化されたエクスペリエンスを構築できます。空間パネルは、UI 要素、インタラクティブ コンポーネント、没入型コンテンツのコンテナとして機能します。

オーロラと雪山が表示された Android XR アプリ。オービターには 3 つのユーザー コントロール メニューがあります。メインパネルの上に、左、右、下側に 1 つずつ配置されています。

UI のスケーリングと移動の仕組みを理解する

空間パネルは、ユーザーからの距離に基づいてサイズを自動調整します。この動的なスケーリングにより、さまざまな距離から見ても UI 要素の視認性と操作性が維持されます。サイズは 0.75 メートルから 1.75 メートルの間で一定です。その後、スケーリング率は 1 メートルあたり 0.5 メートルで増加し、要素は小さく表示されます。

システム UI との競合を避けるため、デフォルトのパネル移動制限内に収めます。

  • 最小深度: ユーザーから 0.75 m
  • 最大深度: ユーザーから 5 メートル

ユーザーは、空間パネルを拡大または縮小して、ユーザーからの距離に関係なく、はっきりと見えるようにすることができます。ユーザーが空間パネルを移動すると、Android XR は自動的にそのサイズをスケーリングします。

空間パネルのサイズ

Android XR は、幅広いユーザーにとって快適で、読みやすく、使いやすいアプリを作成できるように設計されています。最適なエクスペリエンスを実現するため、システムは 0.868 dp-to-dmm を使用します。ヘッドセットで表示されるアプリは、スマートフォンやタブレットで表示されるアプリよりもユーザーから遠くに見えるため、使いやすくするには大きくする必要があります。

フルスペースでは、空間パネルの最小サイズはありません。最大サイズは、物理的な制限により 2, 560 dp × 1, 800 dp です。

XR アプリから 1.75 メートルの距離にいるユーザーの可視化。

空間パネルの配置場所

フルスペースでは、パススルー環境と仮想環境の両方でパネルの配置を決定できます。ユーザーがホームスペースからフルスペースに切り替えても、カスタム位置を割り当てない限り、要素は同じ予測可能な位置に留まります。

XR アプリを見ているユーザー。自然なアイレベルはパネルの中心から 5 度下。

ユーザーの視線から 1.75 メートルの位置にパネルの中心を生成します。 ユーザーは下を向く傾向があるため、快適性を最大限に高めるには、パネルの垂直方向の中心をユーザーの目の高さより 5° 下に配置します。

ユーザーが画角の中心 41 度のパネルを見ている。

快適性を最適化するには、ユーザーの画角の中心 41° にコンテンツを配置します。これにより、視認性が確保され、頭や体を過度に動かす必要がなくなります。

ユーザーが空間内を移動しても、空間パネルは元の位置に留まります。

Android XR には、ユーザーが要素をシームレスに操作できるようにし、開発プロセスを簡素化するための、すぐに使えるインタラクション パターンが用意されています。ユーザーは、要素を移動して個人用スペースに合わせることができます。移動とサイズ変更の動作を構成できます。

ユーザーが空間内の実世界のオブジェクトを基準にして UI 要素を配置できるように、ユーザーが床、椅子、壁、天井、テーブルなど、実世界の特定の場所に空間パネルをアンカーできるようにします。アンカーはパススルーでのみ使用できます。

ユーザーが安定感と方向感覚を保てるように、ユーザーが空間パネルを現実世界の特定の場所(床、椅子、壁、天井、テーブルなど)に固定できるようにします。アンカーはパススルーでのみ使用できます。

独自の空間レイアウトを作成する

アプリを複数の空間パネルに分解し、任意のレイアウトに配置できます。Spatial UI API では、パネルの数に制限はありません。これには、行と列、フラットな行とカーブした行を含むレイアウトを作成する機能が含まれます。空間パネルの位置は、特定の位置にすることも、任意の位置にすることもできます。空間 UI レイアウトを開発する方法を学習する。

3 つのパネルが横一列に並んでいるのを見ている人

フラットな行レイアウト

3 つのフラットパネルが湾曲した列に並んで配置され、外側の左右のパネルが近くにある状態を見ている人

曲線行レイアウト

任意の場所に配置された、異なるサイズの 3 つのフラットパネルを見ている人。左右の外側のパネルは、より遠くにあります。

任意の位置のレイアウト

空間動画

空間動画を使用すると、コンテンツに立体的で臨場感あふれる雰囲気を加えることができます。これらの動画は、フラット、180° 半球、360° 球面のサーフェスに表示されるモノスコープ動画またはステレオスコープ動画としてデザインに組み込むことができます。

オービター

オービターは、通常、空間パネル内のコンテンツや、オービターが固定されている他のエンティティを操作するために使用されるフローティング UI 要素です。コンテンツのスペースをより広く確保でき、メインのコンテンツを表示したまま、ユーザーが機能にすばやくアクセスできるようになります。オービターを使用すると、既存の UI コンポーネントを統合したり、新しい UI コンポーネントを作成したりできます。

オービターは、ユーザーのニーズと意図を慎重に考慮したうえで、控えめに使用する必要があります。空間化された UI 要素が多すぎると、コンテンツ疲れを引き起こし、過剰な競合アクションでユーザーを圧倒する可能性があります。ナビゲーション レールやナビゲーション バーなど、いくつかの主要なナビゲーション コンポーネントを適応させることをおすすめします。

ホームスペースでのマテリアル デザインの非空間ナビゲーション レール

ホームスペースのマテリアル デザインの非空間化ナビゲーション レール

Full Space のマテリアル デザインの空間ナビゲーション レール

フルスペースでのマテリアル デザインの空間ナビゲーション レール

Home Space のマテリアル デザインの非空間化ナビゲーション バー

ホームスペースのマテリアル デザインの空間化されていないナビゲーション バー

フルスペースのマテリアル デザインの空間ナビゲーション バー

フルスペースでのマテリアル デザインの空間ナビゲーション バー

ガイドライン

  • パネルのパディングを調整して、フレックスまたはパーセンテージの位置を決定します。
  • オービターのオフセットを決定します。推奨される視覚的な距離は 20 dp です。
  • 必要に応じて、空間高度レベルを使用してオービターの高度レベルを調整します。デフォルトでは、Z 深度で 15 dp 上げられます。
  • パネルのサイズ変更時に、サイズを固定またはフレキシブルにすることができます。
  • オービターをコンテンツに合わせて動的に拡張するかどうかを決定します。

避けるべき設計パターン

  • オービターのサイズの 50% を超える重複は避けてください。
  • オービターを空間パネルから離しすぎないようにしてください。
  • 絶対 X 座標または Y 座標は使用しないでください。
  • オービターを過剰に使用しないでください。

空間標高

コンポーネントに空間標高を追加すると、空間パネルの上に Z 軸で表示されます。これにより、ユーザーの注意を引き、階層を改善し、読みやすさを向上させることができます。

空間の高さレベル コンポーネント DP
0 未割り当て .1dp
1 オービター 16 dp
2 未割り当て 24 dp
3 SpatialPopup 32 dp
4 未割り当て 40 dp
5 SpatialDialog 56 dp

Android XR で空間エレベーションを使用するダイアログ

Android XR で標高を使用したプルダウン メニュー

避けるべき設計パターン
  • ボトムシートやサイドシートなどの大きな領域や平面を空間化したり、高さを上げたりしないでください。
  • スクロール可能なコンテンツを含む UI 要素をエレベートしないでください。

ターゲット サイズを大きくする

XR アプリでは、ターゲットはユーザーが操作するポインティング可能な領域です。Android XR はマテリアル デザインのターゲット ガイドラインに準拠しており、精度、快適性、ユーザビリティを向上させるために、より大きなターゲットを推奨しています。

XR のターゲットとホバー状態について学習します。

タイポグラフィのアクセシビリティを高める

フォントの読みやすさは、XR で快適なユーザー エクスペリエンスを実現するために不可欠です。読みやすさを向上させるため、フォントサイズが 14 dp 以上、フォントの太さが標準以上のタイプスケール オプションを使用することをおすすめします。

既存のアプリがマテリアル デザインのガイドラインに準拠している場合、そのアプリはすでに Android XR 向けに最適化されています。マテリアル デザインに基づいて、新しいアプリのタイポグラフィを定義できます。

XR タイポグラフィの詳細

マテリアル デザインのコンポーネントとレイアウトを使用する

Android XR アプリを設計する際は、マテリアル デザインのコンポーネント ライブラリとアダプティブ レイアウトを活用してください。これらのインタラクティブなビルディング ブロックは、開発をスピードアップし、コア機能とイノベーションに集中できるようにします。

XR 向けマテリアル デザインは、空間 UI の動作により、マテリアル 3 コンポーネントとアダプティブ レイアウトを強化します。これにより、アプリのプラットフォームへのネイティブ感を高め、スペースを最適化できます。

このページで説明するように、既存の UI コンポーネントをオービターに配置して空間エレベーションを適用することで、空間化することもできます。

マテリアル 3 デザインキットの要素のコラージュ マテリアル 3 デザインキットをダウンロードして、すぐに始めましょう。