Unity
vuforia
AR
XR

VuforiaとUnityでコードを書かずに始められる簡単AR開発


はじめに

ARというとARKitARCoreが有名です。

しかし、ARKit、ARCore両対応のアプリを作ろうとすると大変です。また、ARCore対応の端末はまだそこまで多くありません。

そこで、今回はVuforiaというサービスとUnityを組み合わせて簡単にAR開発を始められる方法を紹介します。


環境

今回は以下の環境で開発しました

- 開発機:Windows10

- Unity2018.2.4f1

- HUAWEI nova lite(Android7.0)


クラウド側準備


登録

Vuforiaは開発を始める前に登録が必要です

https://developer.vuforia.com/

image.png

右上の「Register」から登録を行います

名前やユーザー名、Emailアドレスを登録します

Companyは適当でも大丈夫です。

登録が終わると認証のメールが届くので、URLをクリックし認証します。

するとログインできるようになるので登録はこれで完了です


ライセンス発行

image.png

左側の「Get Development Key」をクリックしアプリ名を入力します。

アプリ名は後からでも買えられるので大丈夫です

image.png

先ほどの画面に戻りアプリ名をクリックするとライセンスキーが発行されていることがわかります。

このライセンスキーは後ほどUnity上で使用します

image.png


画像の登録

VuforiaにARのターゲットとなる画像を登録します。

隣のタブTarget Managerを開き、Add Databaseをクリックします

image.png

データベース名を入れTypeはDeviceにしておきます

image.png

Add Targetで画像を登録します

image.png

最も基本的なのはSingle Imageで、指定した画像をターゲットにしてオブジェクトを表示したりすることができます。

image.png

各Typeについては↓がわかりやすいです

image.png




Widthは現実のスケールと同じにしておくといいです。

1m=1なので20cmだったら0.2を入力します。

登録されると↓のようにRating(=精度)が表示されます。

基本的には複雑な絵柄だとRatiingが高くなるようです

image.png

最後にDownload Database(All)をクリックしデータベースをダウンロードします。

今回はUnity Editor方式にしてダウンロードしておきます。

image.png

これでクラウド側の準備は完了です。

次にUnity側の準備をします。


Unity側準備


Vuforiaのインストール

Unityプロジェクトを作成しEdit->Project Settings->Player Settings->XR Settingsの

XR Support InstallersからVuforiaのUnity用コンポーネントをインストールすることができます。

image.png

インストールが終わると、右クリックのメニューからVuforia用のオブジェクトが作成できるようになります。

image.png


プロジェクト用設定

Hierarchy上で右クリックしVUforia->AR Cameraと選択します。

すると必要なアセットをインポートするか聞かれるので「Import」を選択します。

image.png

次にEdit->Project Settings->Player Settings->XR Settingsを開いて

Vuforia Augmented Reality SUpportedにチェックを入れます。

image.png

ライセンスに同意します。Acceptをクリックします。

image.png

次にWindow->Vuforia Configurationを開き、ライセンスを登録します。

image.png

App License Keyの部分に発行されたLicense Keyをコピペします

image.png

最後に先ほどダウンロードしたデータベースをインポートします。

UnityPackage形式になっているので、ダブルクリックするとインポートされます。

image.png

これでようやく下準備ができました。


実装

初期状態です

image.png

Main Cameraは使わないので削除します

image.png

メニューからAR Cameraを作成します

image.png

同じようにVuforia -> ImageでImage Targetを作成します

image.png

Image TargetのInspectorを見ると、先ほど登録した画像が表示されています。

複数の画像を登録した場合は「Image Target Behaviour」の中のImage Targetを切り替えることで、Targetにしたい画像を選択できます

image.png


ターゲットが認識されたときに表示したいものを設置する

Image Targetの子に、Sphereを作成します

image.png

image.png

このままだと画像と被ってしまうので位置を少し上にあげておきます

image.png

これで準備は完了です!

ビルドして端末で実行すると・・・

vuforia1.gif

ターゲットを認識するとSphereが表示されました


まとめ

下準備は少し大変ですがVuforiaはトラッキング性能が良く、機種依存も少ない優れたARプラットフォームです。

また、VRと組み合わせて使ったりすることも可能です。

是非、VuforiaとUnityで気軽にARを始めてみてはどうでしょう?