Appleにはたくさんのキットがあります。模型飛行機ではなく、開発者がより簡単にアプリを開発できるソフトウェアフレームワークです。ホームオートメーションアプリの開発に開発者が使うHomeKitはご存知でしょう。また、以前ご紹介したResearchKitは、医療研究アプリの開発を支援するものです。しかし、これら2つはほんの一部に過ぎません。AppleにはClockKit、CloudKit、GameplayKit、MapKit、PhotoKit、ReplayKitなどがあり、WWDCのたびにさらに多くのキットが発表されています。
これらのフレームワークは開発者だけが関心を持つものなので、あまり取り上げていません。しかし、Appleが近々発表するARKitは、iOS 11でARKitを組み込んだアプリが登場し始めると、誰にとっても大きな話題になるでしょう(「iOS 11、小さな工夫でさらにスマートに」2017年6月5日記事参照)。そして、発売日にはARKitが大量に登場することは間違いないでしょう。
ARKitのARは拡張現実(Augmented Reality)の略です。仮想世界に没入することを目的とする仮想現実(VR)とは対照的に、拡張現実(AR)はデジタル生成画像をライブビデオに重ね合わせることで、現実世界と仮想世界を融合させます。ARの最も有名な例は、約1年前に私が「ポケモンGOって一体何?」(2016年7月17日)で書いた、大ヒットアプリ「ポケモンGO」です。
ARKitの仕組み— 拡張現実(AR)自体は新しいものではなく、ポケモンGOが登場した当時もそうでした。ARの例はスマートフォンの黎明期から存在していましたが、その技術は長らく比較的未熟なものでした。例えば、Amazonアプリはリビングルームの壁にテレビを設置した場合の見え方を表示できますが、アプリがテレビの位置を認識するためには、壁に1ドル札をテープで貼り付ける必要があります。InkHunterアプリは
腕にタトゥーを入れた場合のプレビューを表示できますが、タトゥーを入れたい場所にスマイリーフェイスを描く必要があります。
これらのアプリは写真に写っている立体的な物体を認識できないため、ドル紙幣やスマイリーフェイスをプレースホルダーとして必要としています。AppleはARKitでこの問題を解決したいと考えています。
ARKitはカメラデータとモーションデータを分析して表面を認識し、デジタルオブジェクトが相互作用できる平面を構築します。さらに、ARKitはこれらのデータを活用して、デジタルオブジェクトに適切なライティングを適用することもできます。
つまり、ARKitはデジタルオブジェクトが現実世界の表面にインタラクトし、変化する照明条件に応じて外観を変化させることで、可能な限り自然に溶け込むことを可能にします。いくつか例を見てみましょう。
この動画では、ロボットがリビングルームを踊り回り、一歩一歩床に完璧に着地しています。ランプの光の反射がロボットを追っている様子に注目してください。
もう驚きましたか? ちょっと待ってください、続きがあります。開発者がARKitを使って、仮想世界と現実世界をつなぐポータルを作成しました。動画では、開発者が仮想のドアをくぐり、仮想世界を歩き回り、現実世界を見返しています。
最後にもう一つ例を挙げましょう。この動画を見てください。二人の男性がバスケットボールをしているだけですよね?よく見てください。選手たちはデジタルでシーンに挿入されています。
ARKitのテストと開発はまだ初期段階にあることを忘れないでください。開発者たちはまさに開発を始めたばかりです。
感心する一方で、「素晴らしいけど、何の役に立つの?」とも思っているかもしれません。初期の用途の多くはゲーム用ですが、便利な用途も数多く登場するだろうと予想しています。
ARKit in the Real World — AppleがiOS 11をリリースした後、巻き尺アプリが新しい懐中電灯アプリとして登場するでしょう。そのようなアプリが数多く登場するでしょう。すでにいくつかのコンセプトが機能していますが、このビデオは私がこれまで見た中で最も印象的なものです。
しかし、ARを使って現実世界を計測するというコンセプトは、さらに発展させることができます。部屋全体の面積を計測できるアプリの動画をご覧ください。
部屋といえば、夏の間ずっと家具を移動させてきた私にとって、AR を使って部屋に家具を配置できる、開発者 Asher Volmer によるコンセプト アプリのこのビデオはワクワクするものでした。
ARKitで遊ぶ— Apple開発者なら、AppleのARKitデモアプリを試してみることができます。AR内にいくつかのシンプルなオブジェクトを配置できます。プロジェクトのコンパイルとアプリのインストールにはXcodeを使う必要がありますが、やり方さえ分かっていればそれほど面倒ではありません。私はプログラマーではありませんが、それでもうまく動作させることができました。
ARKitのデモアプリを面倒に感じたくないという方のために、少しだけお見せしましょう。カメラアプリとほぼ同じように動作します。アプリはオブジェクトを配置できる面をスキャンし、認識すると黄色の四角形をその上に表示します。中央のボタンで、配置するオブジェクトを選択できます。キャンドル、カップ、花瓶、ランプ、椅子などです。下のスクリーンショットのキャンドルのようなオブジェクトを配置すると、現実空間にある3Dオブジェクトのように見え、動作します。
バーチャルチェアのおかげで、より分かりやすいデモンストレーションになりました。まるで本物の椅子のように、椅子の周りを歩き回ることができます。
足をその下に入れることもできますが、実際には存在しない何かの下に足が消えていくのを見るのは奇妙な感覚でした。
ARKitアプリは、家の中で様々な用途に活用できます。家具を全部動かして最適な配置場所を探す代わりに、ARKitを使って部屋中にオブジェクトを配置すれば、作業の負担を軽減し、腰痛も軽減できます。また、ARKitアプリを使えば、日中の照明の変化に合わせて、家のペンキの色やカーペットがどのように見えるかを視覚的に確認できるかもしれません。
同様に、ARKitはあらゆるショッピングアプリに登場するでしょう。ARを使って、注文前にソファをリビングルームに配置できると想像してみてください。あるアプリでは、枕を例に、これがどのように機能するかを示しています。
Alper Guler氏は、レストランで何を注文するかを決める際にARKitがどのように役立つかを紹介します。注文する前に、他のお客さんの料理がどんなものかちらっと見たことはありませんか?テーブルに着いて目の前でメニューの全ての品目を見ることができたらどうでしょう?その様子を紹介する動画をご覧ください。
ARKitは、見知らぬ街を旅行する際にも役立ちます。このデモビデオでは、アプリがARKitとCoreLocationを連携させ、街のスカイライン上の注目ポイントや、街を歩きながらARで方向を示す線を表示する様子をご覧いただけます。
ARKitを使えば使うほど、AppleはiPhoneやiPadにとどまらない製品へのARKitの導入を検討しているはずだと確信する。街を歩きながらiPhoneを顔の前にかざして、現実世界がどのように拡張されているかを見るのは、(ポケモンGOのプレイヤーを見ればわかるように)ぎこちない。ARKitはメガネに統合されるのを待っている。
Google Glassで、私たちはその一端を既に体験しています。初期の技術は有望でしたが、バグやや過大なプライバシーに関する懸念に悩まされました(人々がスマートフォンで写真や動画を撮っていた時代もありました)。しかし、Glassが産業界で第二の人生を歩み始めたこと(「Google Glass、工場と倉庫へ…復活」2017年7月19日記事参照)は、Glassの初期リリースにはキラーアプリが欠けていたことを示しているのかもしれません。ARKitを基盤とした拡張性があれば、Appleは機能的に魅力的で、かつ社会的にも受け入れられる電子アイウェアを開発できるかもしれません。