ポケモンGO以降、消費者にも身近な存在になったARは、現在アプリや消費者向けサービスなどあらゆるシーンで見かけるようになりました。
そんなAR体験を支える技術インフラとして、Apple社は「AR Kit」というiOSとiPadOSで使えるAR機能を開発しており、現在はAR Kit 6がリリースされています。
今回は、そもそもAR Kitとは?という基本情報から、進化したアップル社のARKitでできること、その具体的な使い方までご紹介します。
目次
AR Kitとは
AR KitはApple社が開発したiOS対応のARプラットフォームで、AR kitを使ってAR体験やARアプリを作ることができます。AR KitではiOSに搭載されたモーションセンサーとカメラが空間やオブジェクトに関する情報を外界から取得し、その情報を元に高精度なAR体験をユーザーに提供します。VR体験のように多数の大きなデバイスを使う必要がなく、iPhoneやiPadのカメラを使ってARコンテンツを構築できるため、非常に手軽にAR体験をすることができます。
AR Kit3では、「People Occlusion」という機能が搭載されるようになりました。これは人とARオブジェクトを重ねると、それぞの物体の前後関係を判断し、オブジェクトで人の一部が隠れるようになりました。これにより、ARでよりリアルな位置関係を体験することができるようになりました。
AR Kitはリリース後にアップデートを重ねてきましたが、開発者会議WWDC2020にて、iOSとiPadOSのAR機能の新バージョン「AR Kit 4」を発表し、注目を集めました。
AR Kit 4でできること
AR Kit4にはさまざまな機能がありますが、ここでは主要なものを紹介します。それぞれ解説していきます。
- 平面検出
- 周囲の明るさを検出可能
- 3次元情報の検出
- モーションキャプチャ
- 自分の位置情報を検出
- AR空間を複数人でシェア
- 現実世界のスケールを検出可能
- Depth APIで3D物体のマップ上への配置が可能
- Location Anchorsで様々なオブジェクトを配置
- フェイス・トラッキングが最大3人まで同時対応可能
①平面検出
ARKitでは平面を認識して、その上にARオブジェクトを配置することができます。また、複数の平面の検出もできるため、高さによる平面の位置の違いを認識し、階段などの段差などにも対応しています。
最近ではアップデートにより壁などの垂直面や円形のテーブルなど特殊な形状の平面も問題なく認識することが可能です。
②周囲の明るさを検出可能
AR Kitの明るさを検出する機能は、カメラによって全体の明るさを数値で検出することができるようになっています。ARを動かす際、明るさの情報は重要で、AR体験をよりリアルなものにするために必要です。
当初は、光源の位置などを検出できなかったため、太陽の方向に合わせてオブジェクに影を生成するようなことはできませんでした。しかし、その後アップデートの結果、光沢や光の反射など環境光をARに反映する機能がより向上しています。
③3次元情報の検出
ARでは、カメラの画像を分析して顔や物体から現実の空間の座標を取得し、3D空間に情報を検出します。検出して取り込んだ映像は凹凸などを推定します。ARではこのような情報処理が必須です。
④モーションキャプチャ
ARは人やものの動きを正確に認識しなければなりません。AR Kitでは、特殊なデバイスを使うことなく、iPhoneやiPadでモーションキャプチャを利用することができます。iPhoneなどに搭載されたカメラを向けるだけで、人の関節などを認識し体の位置と動きを細かくキャプチャすることができます。
ただし、スマホのカメラをセンサーでは限界もあり、指先の細かい動きまでは捉えられません。今後の技術の向上に期待したいところです。
⑤自分の位置情報を検出
ARにとって位置情報はとても重要な要素です。AR空間として表示される映像には、現実空間にオブジェクを正しく反映させるために必要不可欠です。
AR Kitでは、自分がどこにいるのか、端末のカメラがどの方向を向いているのかなどを検知し、現実空間に正しくオブジェクトを反映させます。
⑥AR空間を複数人でシェア
AR Kitでは、一つのAR空間を複数人で共有して、遊んだり作業することができます。この機能は多くのゲームアプリなどに備わっている要素で、AR空間をよりソーシャルなものにします。
リリース当初のAR Kitではこの機能はなく、アプリを起動していても複数人で共有はできませんでした。アップデートによってAR空間のシェア機能が実装されたことにより、現在で歯AR体験の構築作業をスピーディーに行うこともできます。
⑦現実世界のスケールを検出可能
AR Kitでは、実物の距離や長さ、大きさを測定することが可能です。ARアプリなどではよくある機能で、実際に物理的に測定できないものを測ることができるため、大変便利です。例えば、家具などを実際の大きさで表示し、商品が自分の部屋のスペースに収まるかを確認することができます。
⑧Depth APIで3D物体のマップ上への配置が可能
まずは「Depth API」について解説しましょう。多くのARデバイスでは通常、複数の深度センサーを使って深度マップを作成して情報を得ていますが、Depth APIではスマホのセンサーのみで深度マップを生成することができます。
この機能は、デジタルオブジェクトを現実世界の物体の前後左右など正確な位置に表示することに優れており、オブジェクトを実際にその場にあるかのように感じさせるような臨場感のある表現を可能にします。LiDARスキャナに搭載されたこの認識機能によって、周囲の情報をピクセル単位で収集することができます。LiDAR搭載端末のみ実行が可能なので注意しましょう。
周囲の情報をピクセル単位で収集した後は、取り込んだ情報を3Dメッシュデータと統合します。この過程により、実際の物との重なりを正確に表すなど、より現実に馴染むバーチャルオブジェクトを生成が可能になりました。LiDARスキャナを搭載する新型iPad Proの11インチ、12.9インチモデルが対象なので、この機能を使いたい場合は購入の必要があります。
⑨Location Anchorsで様々なオブジェクトを配置
Location Anchorsは、街中や名所のそばなど、特定の場所にARオブジェクトを配置できる機能です。Location Anchorsを使用すると、緯度、経度、高度などの位置情報を指定してAR作品を自由に配置することができます。現実空間にリアルなARオブジェクトが配置されるため、ユーザーはカメラのレンズを通して実物を見ているようなリアルな感覚を体験することができ、バーチャルオブジェクトの周りを歩いたり、様々な角度から眺めて楽しむことができます。
ただし、この機能はまだ機種や使用できる場所が限られています。AR kit4では、iPhone XS、iPhone XS Max、iPhone XR以降の機種に対応しており、特定の都市でのみ利用できます。有名なスポットや観光地に行った際に活躍しそうです。
⑩フェイス・トラッキングが最大3人まで同時対応可能
フェイストラッキング機能は、新しいiPhone SEはもちろんのこと、A12 Bionicチップ以降を搭載したすべてのデバイスのフロントカメラで利用できるようになりました。これにより、多くのユーザーがフロントカメラを用いたAR体験を楽むことができるようになりました。また、Depthカメラでは同時に最大3人の顔をトラッキングすることが可能になりました。
ARKitの使い方
ここからは、初心者向けにAR Kitの簡単な使い方を紹介します。どれも簡単な操作だけでよく、専門的な知識は必要ありません。
①環境の設定
初めに、iPhoneとMacをケーブルで接続してお互いを認識させます。
次に、Xcodeを起動しましょう。XcodeはApple製品のアプリケーションを開発するツールです。
Xcodeを起動したら、「Create a new Xcode project」を選択し、「Augument Reality App」→「Next」と選択していきます。
次に、「Chose options for your new project」とプロジェクトのオプションを設定する画面が表示されるので、それぞれ入力していきます。「Product Name」、「Organization Name」、「Organization Identifer」はそれぞれ任意の名前で問題ありません。
入力が終わったら、「Next」→「Create」を選択していきます。
次の表示画面「General」欄の「Signing」→「Team」が 「None」の場合は、「Add an acount」を選択します。また、Apple IDとPassWordを求められるので入力し、「Next」を選択しましょう。
最後に左上にある「▶(Build)」マークを押すと、iPhoneでアプリが起動し、目の前に飛行機が出現するはずです。
②ARのテンプレートプロジェクトをつくる
Xcodeを開いた状態で、新規プロジェクトを作成して見ましょう。すると、選択画面に移ります。ここで、「Augmented Reality App」を選択してプロジェクトを作成します。
これでARのテンプレートプロジェクトが完成しました。iPhoneやiPadで起動すると、カメラがオンになり、デモ版の宇宙船オブジェクトが出現します。このように、驚くほど簡単にARプロジェクトが作れてしまうのです。
③フリー素材を使って自由にオブジェクトを変えてみる
ただ、このままだとデフォルトのオブジェクトが表示されただけなので、素材を変えて見ましょう。
ARで使う素材はフリーで配布されているものも多く存在します。例えば、Free3Dというサイトで配布されているフリー素材の中から好きなものを選び、ダウンロードしてみてください。ダウンロードした素材はXcodeのプロジェクトにインポートして、「.scn」に変換すれば準備完了です。
ちなみに、「.scn」への変換はXcodeメニューの「Editor」から 「Convert to SceneKit scene file format (.scn)」で変換することができます。
インポートしたらオブジェクトが画面に映し出されます。デフオルトの状態だとオブジェクトは傾いていることが多いので、配置を調整しましょう。具体的にはキャプチャの右に表示されているPosition、Eulerの値を変更すると、傾きなどを調整することができます。
④さまざまな応用が可能
これだけでも十分に楽しめるARですが、このままの設定だとオブジェクトは空中に浮いており、現実感があまりありません。これまでの設定が終わったら、その後は水平面を感知させて実際にオブジェクトが本当に存在するようにすることもできます。
また、タップしたらオブジェクトが反応して動くようにしたり、画面上でオブジェクトをドラッグすると指の動きに合わせて動かしたりすることもできます。ARは使い方もまだまだ発展途上ですが、比較的簡単なソースコードで新たな体験を作り出すことができます。AR Kitの入門編が完了したら、ぜひ詳しいソースコードなどを調べ、学んでみてください。
<関連記事>
AR Coreとの違い
AR Kitと同じくARのフレームワークとして知られているのが、GoogleのAR Coreです。AR KitとAR Coreでどちらが優れているということはなく、同じような機能を有しています。
ただし、物理空間の認識速度はAR kitがやや早く、特に人の顔に関しては目や口の開き具合を細かく認識できるなど、独自の強みも持っています。また、AR KitはiOS端末だけしか使えないというところもポイントです。
一方、AR Coreでは、Android端末とiOS端末の両方で利用することができるため、AndroidユーザーであればAR Coreが選択肢となるでしょう。
まとめ
2017年のリリース依頼、AR Kitは何回もアップデートがなされ、技術者や専門家だけでなく、多くのユーザーに利用できるように工夫が施されてきました。また、「Reality Composer」では、Unityなどのアプリが不要で、iOS端末上でARデモを動かすことができるようになりました。スマホ1台でARを作ることができるAR Kitは、今後ますます人々の間に広がっていきそうです。
「ARマーケティングラボ」を運営するOnePlanetでは、ARに関連した様々なサービスを提供しています。
ARのビジネス活用を検討していましたら、お気軽にご相談ください。
<合わせて読みたい>