Apple Engine

Apple, iPhone, iOS, その周辺のことについて

iPhone と Reality Composer で始める簡単 AR その3 - 主なユーザーインターフェイス編

今回は Reality Composer のメイン画面のユーザーインターフェイスについて。
Reality Composer では macOS 版と iOS /iPadOS 版でリリースされており、UI が異なっているが基本的にはどのプラットフォームでも全ての機能にアクセスできるようになっている。

書き出しの UI のみ前回やったので省略する。

 

各プラットホームでの違い

macOS と iPadOS 版はほぼ同じ UI を有し、iOS では上部に undo を除く5つのボタンと少なく他は「…」の詳細ボタンに押し込められている。

詳細

 

iOS/iPadOS 版では AR のプレビューのボタンがあり、AR が使用できない macOS ではプロジェクトを iPhone, iPad に転送して端末側で編集できる機能のボタンがある。

 

UI について

タイトルで iPhone でと書きながら、macOS の UI で説明していく。
説明していなかったが macOS 版 Reality Composer の起動は Xcode の Open Developer Tool から。

 

アンカーの選択

プロジェクト新規作成時に表示される UI。
使用できるアンカーは以下の5つで詳細は今後紹介。

  • 水平方向
  • 垂直方向
  • イメージ
  • オブジェクト

 

macOS ではテンプレートコンテンツを使用するか否かを選択でき、チェックを外すとシーン上にオブジェクトが表示されない。
ちなみにチェックボタンは状態保存されるので次回新規作成時には注意。

 

シーン(シーンピッカー)

シーンとは現在の AR 空間を設定するもので、Unity、Unreal Engine などのゲームエンジンや SceneKit でいうシーンと同義のもの。
このボタンを押すとシーンを選択する UI が表示される。
プロジェクトでは複数のシーンを作成することができ、ビヘイビアのトリガーでシーン再生、アクションで別シーンへ遷移させる設定が可能。

iOS では詳細ボタンからアクセスできる。

 

フレーム

シーンにあるすべてのオブジェクトをシーンの表示(ビューポート)に収まるように合わせたり、選択したものをシーンの表示に収まるように表示するボタン。
「フレームシーン」がすべて、「選択済みのフレーム」が選択したもの。

iOS ではオブジェクトがない部分でダブルタップで「フレームシーン」、オブジェクトをダブルタップで「選択済みのフレーム」と同じ振る舞い。

 

スナップ

f:id:x67x6fx74x6f:20200211042920p:plain

オブジェクトをドラッグして移動する際に他のオブジェクトにスナップするか否かを選択するボタン。
スナップする単位は各オブジェクトのバウンディングボックス(ジオメトリ単位で囲む立方体)

iOS では詳細ボタンからアクセスできる。

 

変更

f:id:x67x6fx74x6f:20200211040507p:plain

オブジェクトのプロパティをビューポートで変更するボタン。
立方体なら幅、高さ、奥行、球なら直径、棒グラフなら棒の長さなど、変更の操作ができるものはビルトインのジオメトリのみで、USDZ ファイルでは使用することができない。

iOS / iPadOS ではオブジェクトの長押し、またはオブジェクトタップ後再度タップでアクセスできる。

 

スペース

座標系をワールド座標かローカル座標に変更するボタン。

iOS では詳細ボタンからアクセスできる。

 

オブジェクト

シーンに設置するビルトインのオブジェクト、または用意されているものや自前の USDZ ファイルを選択する UI が表示されるボタン。
詳細は今後紹介。

 

テキスト

オブジェクトと同様にシーンに設置する。

iOS / iPadOS ではオブジェクトの UI 内で選択できる。

 

再生

ビヘイビアで設定したアニメーションを再生、または停止するボタン。

 

iOS上で編集 (macOS 版のみ)

macOS のみの機能で、現在のプロジェクトを iOS / iPadOS の Reality Composer に渡し編集することができるボタン。
クリックすると UI が表示され Reality Composer が起動されている iOS / iPadOS 端末が近くにある場合、端末側で編集することができる。
(この機能は AirDrop を使用している可能性があり互いに設定をする必要がある)

 

プロパティ

シーンやオブジェクトの設定を行う UI を表示するボタン。
状態によって表示が異なるため割愛。
詳細は今後紹介。

 

ビヘイビア

アンカー認識後、テンプレートの振る舞いまたは、シーン開始やオブジェクトタップなど動作の引き金になるトリガー。
シーンやオブジェクトの振る舞いを設定するアクション。
ビヘイビアのボタンを押すとこれらを設定 UI が表示される。

ビヘイビアは複数設定することが可能で、 アクションは複数のアクションを同時再生したり、順番に再生したり、ループ再生したりすることができる。
また、RealityKit で動作を開始するトリガー、RealityKit へ通知するアクションが用意されている。

ビヘイビアとプロパティの UI 表示は排他的になっているためビヘイビアが表示されるとプロパティが閉じる。

詳細は今後紹介。

iOS では詳細ボタンからアクセスできる。

 

オブジェクトの複数選択

macOS の場合は Shift または Command を押しながらクリック。
iOS / iPadOS はオブジェクトをタップした状態を保ちながらもうひとつのオブジェクトをタップする。

 

グループ / グループ解除 / 展開

f:id:x67x6fx74x6f:20200211041521p:plain

複数のオブジェクトをグループ化してひとつのものとして操作したり、グループを解除することができる。
また、USDZ では階層化されているものは展開をして階層をなくすことができる。

macOS の場合は右クリックから、
iOS / iPadOS ではオブジェクトの長押し、またはオブジェクトタップ後再度タップでアクセスできる。

 

置換

f:id:x67x6fx74x6f:20200211044745p:plain

選択したオブジェクトをコンテンツライブラリから選択した他のオブジェクトへ置き換える。

macOS の場合は右クリックから、
iOS / iPadOS ではオブジェクトの長押し、またはオブジェクトタップ後再度タップでアクセスできる。

 

AR / AR プレビュー(iOS / iPadOS 版のみ)

iOS / iPadOS 版のみ使用可能でこのボタンを押すと端末で AR のプレビューをしながらプロジェクトの編集を行うことができる。

 

デベロッパ(iOS / iPadOS 版のみ)

iOS / iPadOS 版のみ使用可能で詳細の中にある。
ARセッションの保存と再生がありセッション(カメラとセンサー)情報の保存と再生が可能でアプリケーションのデバッグなどに使用できる。

 

環境設定 (macOS 版のみ)

macOS 版では以下の設定変更ができる。

  • 単位
  • テンプレートコンテンツを使用
  • 読み込み時にUSDZファイルをグループ化
  • オブジェクトの縁にガイドを表示

f:id:x67x6fx74x6f:20200211045737p:plain

 

マニピュレータ

f:id:x67x6fx74x6f:20200211042633p:plain

ビューポートで選択したオブジェクトをコントロールするための UI。
他のツールとは異なり、カメラ方向に合わせて移動方向と回転方向のマニュピレータが表示される。
そのため、カメラを回転や移動しないと表示されない場合があるが、X, Y や roll や yaw のハンドル被って操作しずらいというのが緩和される。

 

まとめ

コンテンツを制作するツールとして考えると機能的にはかなり少ないが、AR コンテンツを作るにはも十分な UI が備わっている。

次回はアンカーについて