ARのUIを世界のどこに表示するのかについての考察
ご無沙汰しております。321です。
去年から株式会社Benchでデザインを担当してます。
ここ半年くらいは以前から考えていたARについての考えを実践してみようということで、ARのアプリを制作しています。
先頃、「AR紙相撲」というiOSアプリをリリースしました。
机やテーブルの上にARの土俵と紙の力士を置き、机を叩くことで紙相撲を楽しめる二人用のゲームです。
技術としては、ARFoundationとMediapipeのハンドトラッキングを使っています。(UnityようのMediapipeプラグイン「MediaPipeUnityPlugin」がなければ実装無理でした。作者のhomulerさんに、本当に感謝です。)
今回は「AR紙相撲」を作るにあたって、何を考えて作ったのかについて書きたいと思います。
完全無料ですので、ご興味ある方は是非ダウンロードして遊んでみていただけると嬉しいです。(申し訳ないですがAndroidは対応してません。iOSアプリのみです。)
ARのUIデザインはどうなっていくのか?
UIデザインの革新は幾度も起きてきましたが、ARが実現するUIの変化はさらに劇的になると思っています。
まず、ARでは表示するコンテンツも操作するためのインターフェースも「2D」から「3D」へ自由度が増えます。
さらに、それらのコンテンツや操作インターフェースを「ディスプレイの中にどう並べるか」から「世界のどこに表示するか」へと選択肢が劇的に広がります。
テレビや映画が3Dになった時にどうなるのかはまだ未知数ですし(映像におけるモンタージュのような理論が必要なのだと思います)、グラフを3次元で表示する時のノウハウもありませんし(不勉強なだけかもしれません)、WEBデザイン等で言えばWEBサイトと言う概念から作り直さなければなりません(相変わらずディスプレイ的な平面型、冊子型、人型、部屋型、猫型など色んなサイト?が出てきそうです)。
それをどこに表示するのかも重要です。
要するに今までディスプレイの中にあった仮想現実(コンテンツと操作インターフェース)がディスプレイから開放され、現実と混ざりあってしまうことが起こるわけです。
今まではボタンやタブなどの操作インターフェースだろうとイラストや動画などのコンテンツだろうと、ディスプレイの中に収まっていました。
それがディスプレイ外≒今までの感覚では『現実』とでも言うところにも『仮想』であったものを置けるようになります。
なので現実にあってもおかしくないようなUI(調和)、現実と間違わないようなUI(対比)が重要になると思います。
例えば、壁にかかっている絵は触らない限りはARであろうと現実であろうと関係ありません。映像もしかりで、テレビが実際にあろうとAR上にあろうとどちらでも良い。現実と非常に調和します。
広告を出せる場所は格段に広がって、大喜利並にいろんな選択肢があります。天井に広告、テーブルに広告、トイレの蓋に広告、床に広告、それも立体で。
いかに邪魔にならないか、現実と調和するかがすごく重要になると思います。
逆に、特定の現実の物体のようなARを作らない、またはARを現実ではないことを強調する必要がある場合もあります。
例えば、つり革ARは作るべきではないし(掴まれないので紛らわしいです)、仮に作るとしたら仮想であって実際には掴まれないことを強調すべきです。
さらに、操作インターフェースももちろんディスプレイから開放されます。
IT業界で言うところのボタン、タブ、スクロール、カルーセル、ポップアップ等などのUIは2Dを前提としてました。3DでのUIを考える際には、それらのUIも踏まえた上で、現実のボタンやファイルのタブなども踏まえた上で、機能に合うものを新たに作る必要があります。
例えば、「移動」のような現実にある機能を当たり前の操作(→調和)で、現実にはありえない機能(例えば拡大のような)をそれとは違う操作(→対比)でするといったようなUIを新たに作っていく必要があります。
AR時代のUIデザイナーはやること盛りだくさんです。
現実と仮想現実をいかに調和(対比)させるかということを、ほとんど全てのUIについて考え直すチャンスがあります。
現状のARデザインのUIは
しかし、現状のARのUIでは「透明なディスプレイがあるかのようなUI」が多用されています。
空中にボタンが現れるUIは見た目上SFっぽくもあり、ARが普及する前の宣伝として有効ということもあるのかもしれません。
もしくは「空間上に配置されている物体は仮想空間」というUIのルールにしたいのか??
ともあれ、慣れもあるので今までのディスプレイ文化の延長のようなUIはしばらくは使われていくのだろうとは思います。
(※ちなみに、スマホを操作インターフェースにするというのは現状の制約を踏まえて今リリースするならという話なので、ここで考えているようなARが普及したあとのUIとは別だと思います。)
しかし、どうも個人的に空間上に浮いているUIは好きになれません。
理由は単純で、押した感じがしないからです。
レーザーポインターでボタンを狙うのもなんだか好きになれません。
ARが当たり前になるとして、今後何十年もそれをやっていくとしたら(触感フィードバックが普及するまでの間は)嫌だなぁと思っています。
ということで、Benchではもっと好きになれるARのUIを考えてみたいと思っています。
現実と調和(対比)する仮想現実のUIとは、どんなUIなのか?
もちろん答えはまだありません。
仮説の、初期段階の、MVPの、第一形態というところですが、個人的に思い描いているのはファンタジーで描かれる魔法のようなUIです。
「メラ」と唱えると魔法の杖の先から炎が飛ぶような、あれです。
現在のUIとの対比で言えば、呪文(メラ)が音声入力、魔法の杖がカーソルのようなイメージ。
AR上では、音声入力が主力な操作インターフェースになるんじゃないかと思います。
メガネ一つあれば(ネットに繋がっていれば)手ぶらで使えるのがARの大きなメリットの一つだと思いますが、音声入力が進化して複雑な命令(相談?)ができるようになれば、ARの携帯性を最大限活かせるからです。
そうは思っているのですが、個人的に興味があるのは実は魔法の杖の方です。
「メラ」と唱えて杖で炎の飛び出る先を決定する、というのが今想像しているUIです。
杖は必要なく手で操れば良いのではないかと思われるかもしれませんが、杖には操作上のメリットがあると思います。
具体的には、
棒状のものであることで、その延長としてのベクトルをイメージしやすい
持っている支点と先端の距離が長いほど、角度の移動を細かく補足できる
慣性の法則でなめらかな動きになる
というようなメリットです。
小さなレーザーポインターを使う時にちょっとした手首の返しでの移動が大きすぎてなかなか細かい部分を指せない、ということがあるかと思いますが、杖はそれを扱いやすくできるイメージです。
魔法における杖のように、手で操作する対象を直で仮想世界にするのではなく、現実の物を操作インターフェースとして挟むことで、より細かい操作が出来るようになったり操作した実感が湧くようになるのではないか、というのが私の仮説です。
例えばAR上で絵を書くアプリを作るのであれば、空中に指で描くよりも、スケッチブックとペンの形をした物があったほうが描きやすいです。
AR上の卓球のアプリを作るのであれば、ラケットを握ったつもりの手で打つのではなく、現実のラケットがあったほうが細かい角度を調整出来ます。
AR上の金魚すくいを作るのであれば、現実のポイ(掬う道具)があったほうが面白い。
(卓球や金金魚すくいは触覚が楽しさの大きな部分を占めるので触覚フィードバックが欲しくなりますが、それはちょっと別の話です)
「AR紙相撲」
以上のような考えで「AR紙相撲」でも、現実の物を操作インターフェースに使ったUIとして、土俵(≒机やテーブル)を叩くという操作を使っています。(実装の都合で土俵脇にここを叩いてねというマーカーを置くという形にしてます)
紙相撲ではそもそも取組中にちょくせつ紙の力士に触れることはありません。土俵(≒机やテーブル)を叩くと紙の力士が動くというルールを守れれば紙相撲のリアリティを維持できそうだということで、紙相撲をモチーフに選びました。
(スマホをタップするUIにすれば工数とアプリ容量を削れたのですが、わざわざMediapipeを使ったのは「土俵を叩くと力士が動く」をやりたかったからです。)
もちろん、それだけでは実際の紙相撲のほうが面白いので、必殺技をつけたり、進む方向をある程度操作できるようにしたり、プログラムならではの付加価値をつけました。
課題
技術力不足により課題も残ってます。
本当は机全体を叩けるようにしたい。
実際の土俵の揺れを紙力士に反映させたい(叩く強さを反映したい)。
ハンドトラッキングの判定が外れてしまうのを避けたい。
複数デバイスから同じARを見れるようにしたい。
アプリ開始時に明かりの方向が決まってしまう。もっと自然に見えるようにしたい。
透明なマテリアル&影だけはつける&オクルージョンをつけるというのをやりたい。
などなど、課題は山盛りです。
とはいえ、「現実の物を操作インターフェースに使う」という案の一つの試作としては、なんとか成立したのではないかと思っています。
個人的な感想としては「現実の物を操作インターフェースに使う」はまだまだ色々試してみたいと思っています。
「現実のもの」は平面などのどこにでもあるものから、クッションなど特定の触感や物理特性を持ったもの、けん玉などの特定の形を持ったもの、などなど色々考えられます。(ARのUI案として考えられるということで、実装方法がわかっているわけではないです。オブジェクトトラッキングとか試したことすらありません。。。)
もちろん、そもそも仮説が間違っていたり、そもそも仮説が当たり前過ぎてみんなが先に行っているだけのこともあるかもしれません。
とりあえずそうわかるまでは、色々試してみます。
無料ですので是非一度遊んでみていただけると嬉しいです。