6月5日から9日まで、米カリフォルニア州・サンノゼで開催された、アップルの年次開発者会議「WWDC 2017」。ここでは、様々な発表が行われた。
多くのユーザーにとっては、新たに発表されたMacやiPad Pro、HomePodなどのハードウエアに興味が向いたかも知れないが、ビジネス的に大きなインパクトがあったのは、iOS11で「AR(拡張現実、Augmented Reality)」に本格対応することである。「ARKit」と名付けられたiOS11のフレームワークにはどういう意味があるのか、改めて解説する
関連:
- WWDC発表まとめ:新iPad Pro、iMac Pro、SiriスピーカーHomePod、iOS 11、macOS High Sierraなど
- iPad Pro 10.5、iMac Pro、HomePodの実機に触った! WWDC17完全新機種ハンズオンレポ
- 新iPad Pro用Smart Keyboardに日本語(JIS)配列が登場、1万7800円〜
- アップル、テンキー付きMagic Keyboard発表。フルサイズのカーソルキー、やけにでかい右option/controlキー搭載
特別なハードウエアを使わず高精度ARを実現
iOS11のAR機能ではどんなことができるのか? まずはWWDCにて公開されたデモの映像を見ていただこう。非常にシンプルなデモなのだが、ARKitでできることがなんなのかをおおむね伝えてくれている。ARKitのデモ動画。どんなことができるか、まずはこちらをご覧ください
まずわかるのは「平らな場所を認識し、そこにCGの物体を重ねられる」ということだ。iPadを振り回しても位置ずれが出ないことから、位置合わせの精度は非常に高いことがわかる。また、物体の色や明るさが、現実の状況に合っていることも注目して欲しい。これはリアリティの向上に大きく寄与する。
さらに、CGに光源のある物体(映像の場合にはライト)が存在すると、その影響を受けて表示が変わる。これも、画面の中から見た映像のリアリティを増すための手法だ。同様に、半透明なオブジェクトを配置した場合には、奥の風景がきちんと透けて見える。
各オブジェクトは、そのサイズが「現実のサイズ」とリンクしている。ARで配置したカップは設定した大きさで机の上に置かれる。ここで重要なのは、サイズの違いに映像は大きく影響される、ということだ。
机よりも大きな物体は、当然机の上に置くことはできない。だが、「床」には置ける。ARKitは高さの違う「机」と「床」など、複数の平面を認識することができて、その高さの違いも把握できている。また、平面の上でなく、空中の特定の場所にオブジェクトを出すこともできる。要は「空に浮かぶメニュー」みたいなものが作れるわけだ。
WWDCではスターウォーズのチェスゲームを再現してみせた他、本格的なゲームである「Wingnut AR」がデモされ、Pokemon GOがARKitに対応することもアナウンスされた。アップルのティム・クックCEOは、ブルームバーグとのインタビューの中で、IKEAとパートナーシップを組んで、ARを使って家具をチェックするアプリを開発することも表明している。
今のARKitでできること。安定的な位置合わせに平面認識、周辺光の状況把握というところか
Pokemon GOもARKit対応で、ARモードがより高度なものに
まだ多い制約、HoloLensやTangoにはかなわず
一方で、できないとわかっていることもある。まず、把握できるのは「平面」だけだ。壁や立体物の形状を把握し、利用することはできない。例えば、現実世界では近くにある物体で奥にあるものが隠れて見えるが、今のARKitでは、近くにある現実の物体で奥にあるCGの物体を隠すのが難しい。同様に、平面以外の立体物の凹凸に合わせてCGの物体を配置することはできない。目の前の平面を把握するだけなので、周囲がどのような場所なのかを正確に把握することもできないわけだ。
現状は「空間全体での絶対位置把握」も難しい。例えば、自分の部屋にあるオブジェクトを置き、道中にまた別のオブジェクトを置いて移動したのち、同じ場所に戻って来た時、同じ場所にそのオブジェクトがあるのが「絶対位置把握」だ。これについては工夫すれば似たことは出来そうだが、ARKitとしてそのための機能があるわけではない。
こうした部分は、HoloLensやGoogleのTangoのような、先行技術との違いである。HoloLensやTangoはごく短い時間で周囲の立体的構造を把握し、それを生かした用途に使える(画像)。そのため、これらの機器は画像センサーの他に距離センサーを搭載しており、それが差別化要因でもある。
これはHoloLensの例。周囲の立体的構造を、このように3Dのデータとして把握しているが、今のARKitにこの要素はない
ARKitによるiOSでのARは、機器側に新しいセンサーを必要としない。搭載されているカメラと内蔵モーションセンサーを使って空間把握を行う。先ほどのビデオをよく見るとわかるが、平面把握をするためにカメラをわざと動かしている。だから、ARが開始されるまでには若干の時間が必要になる。画像ベースなので、コントラストの低い平面は把握が苦手だ。机と床では、床の方が認識に時間がかかるようだ......という話も聞こえてきている。
ARKitでは、iPhone・iPadが持つカメラとモーションセンサー、CPUやGPUだけを使って周囲の状況を把握する。だから多くの機器で利用できるが限界もある。
このように、ARKitはHoloLensやTangoのような先行例を駆逐するものではない。また、「スマートフォン向けの他のARとはレベルが違う」というのも、正しくはない。「Vuforia」や「Kudan」といったフレームワークはすでに多くのアプリで使われており、Androidなどでも使える。日本でも、富士通やソニーがARフレームワークの開発には積極的で、ARKitで実現されているARは「今日的な水準のARの中でも、特別なハードウエアを前提としないものの中では優秀なもの」くらいの認識でいた方が良い。
そもそも、ARKitはアップルが1から開発したものではない。2015年5月、アップルはドイツのAR関連企業「Metaio」を買収しており、ARKitは同社の技術やパテントをベースに開発されたと思われる。
数と均質さでビジネス価値を攻めたアップル
一方で、アップルのARについての対応は価値の低いものか......というとそうではない。むしろビジネス的に見れば、ARの世界を一変させる可能性が極めて高い、非常に重要なものだ。ARKitの価値は、「A9以降のプロセッサーを搭載したiOS機器すべてで利用できる」ことそのものにある。具体的には、iPhone 6s以降のiPhoneとiPad Proおよび第五世代iPadが対象。対象となる製品の台数は非常に多く、それだけでビジネス価値は非常に大きい。
しかもこのことには、いくつかの「アップルならでは」の条件がつけ加わる。
まず、環境が揃っていること。AndroidでももちろんARは動くのだが、機種によるカメラやプロセッサーの性能差があるため、動作検証に手間がかかる。OSのバージョンも、機器によってかなりバラバラだ。特に、複雑なものや精度の高いものを作ろうとすると、対象機種を絞り込む必要があるが、数を確保するために絞り込みを避けようとすると、どうしても「攻めきれない」部分が出てくる。
だが、iOS機器は(当然だが)アップル1社が作っている製品だから、動作検証のハードルはずっと低い。最新OSが使われている比率も非常に高い。例えば、昨年秋に提供されたiOS10の場合、現在の利用率は86%もある。アップル自体がハイエンド製品に絞ったビジネスをしているので、ハードウエア環境も比較的高い水準が維持されている。だからアプリの最適化がしやすく、よい体験のアプリを提供しやすい。
WWDCでは、Androidと比較し、iOSがどれだけ最新OSに統一された環境かを示した。こうした要素は特にARでは効いてくる
次にライセンスコスト。ARの要素をすべて自社開発するのは大変だ。そうでない場合、フレームワークを持っている企業からライセンス供与を受けて利用することになる。ごく一般的なことなので、それそのものは問題ではない。だが、ARKitについて重要な点は、ARKitでARを実現する場合、アップルが標準で用意しているものなので、ARを実現するために追加費用を負担する必要がない。
ソフト開発のコストを下げられれば、それだけ大規模でない手軽なソフトも多く出やすくなる。ARのように方法論が定まっていない世界では、そうした試行錯誤が重要であることは言うまでもない。
もう一つ利点がある。
アップルはiPad向けに、プログラミング学習ツール「Swift Playgrounds」を無償公開している。iOSやMacのアプリ開発に使われているSwiftを使い、「プログラミングによる論理的思考能力」を身につけることを目的に作られたソフトで、教育市場向けのものである。秋にiOS11とともに登場する「バージョン2.0」では、プライバシー系を除くすべてのiOSの機能が、Swift Playgroundsから使えるようになる。
もちろん、ARもだ。Swift Playgroundsは、タッチベースで簡単にプログラミングができるもの。本格的にアプリを作るならMac上の開発環境であるXcodeが必要だが、プロトタイピングレベルでいいなら、Swift Playgroundsでもいい。コードを書いたら「再生」ボタンを押すだけで動くので、非常に簡単で素早い。
アップルが無償公開している「Swift Playgrounds」。秋以降は、ここからもARが簡単に使えるようになる。
要は「アップルが全社的にバックアップし、メインの製品で全面的に展開」することが、ARKitのメリットなのである。
逆にいえば、欠点も明確だ。アップルのやり方に乗っかると、Androidでの展開が難しくなる。別途VRフレームワークを用意し、プラットフォーム毎に作り変える必要が出てくるため、そのコストが今度は問題になるのだ。だから、両方での対応を考えるアプリについては、ある程度慎重に考える必要がある。
スマホの世界はiPhoneだけで構成されているわけではなく、Androidの存在を無視できないわけで、デベロッパーにとっては悩みどころになりそうだ。
とはいえ、これだけ「均質で良いAR体験」が一気に提供されることは、明らかにビジネスチャンスである。ARアプリが秋に向けて急増するのは間違いない。今は基本的な機能の提供に留まっているARKitだが、今後は「ARKitがある」ことを前提にハードウエアが作られていくことになり、より高度な機能の提供も可能になっていくのは間違いない。距離センサーの搭載やHMDとの連動などが視野に入ってくると予想できる。それが今年の新製品かは、ちょっと微妙だが。
実現された「機能」そのものは突飛なものではないのだが、ビジネス環境まで見れば、アップルのやったことは実に理にかなった、盤石の戦略なのである。