AR Foundation in Unity でモバイルARアプリを作成する方法

Unityより2019年5月末現在プレビュー版にて公開されている
AR Foundationを使用してアプリを作成する方法を解説します。

完成サンプル

AR Foundationとは

これまでモバイルARアプリをUnityで作成する際には、
iOS用にはAR Kit Pluginを使用して作成→ビルド、
Andoroid用にはARCore SDK For Unityを使用して作成→ビルド、
と工程が多く面倒でした。

それらがAR Foundationによって、
iOS、Androidそれぞれに1つのプロジェクトからビルド可能になりました。

プレビュー版という事もあり、まだ安定はしていないようですが、
平面検知は優れているとの事なので、それを活かしたものを作成しました。

Unityでの設定方法

インポートするもの

Window > Package Manager からAR Foundation、ARCore XR Plugin、ARKit XR Pluginをインストールします。
もし、All packagesに表示されない場合は、Advanced > Show preview packagesから選択可能になります。

ARセットアップ方法

GameObject > XR > から、AR Session OriginとAR Sessionを選択します。
その際Main Cameraは削除します。

マーカーの作成とスクリプト

こちらのチュートリアルがとても分かりやすいので、説明は割愛します。

作成時の注意点【重要】

作成を進める中で、最も悩んだ箇所はInspectorにスクリプトをアタッチした際に、
prefabをassignする欄が表示されなかったことです。

↓以下の画像は表示されるようになった様子です。

私の場合はIntaractionという名前でHierarchyに作成したものにスクリプトをアタッチしていますが、
AR Session Originにスクリプトをアタッチする解説ブログもありました。

話は逸れましたが、解決するために何度もスクリプトを見直したりしましたが、
結果的にはUnityのバージョンを変更することで解消出来ました。

正常に表示されたのは以下の画像内の2018.2.21f1で
それ以外では表示されませんでした。

まとめ

ARアプリを作成する際、Unityのバージョンは新しいものが推奨されていますが、
私と同じトラブルで足止めをくらっている方向けに本記事を執筆しましたので
お役に立てれば光栄です。

作成自体はさほど難しいことはなかったので、
ぜひアイディア溢れるアプリ作成にチャレンジしてみてはいかがでしょうか?

次はオブジェクトが動くようにしてみたいと思います。