vuforia × Unity で簡単!ARアプリ開発
お久しぶりです。niku9です。
前回の記事ミクさんが腹筋を応援してくれるアプリ MikuMikuTraining を製作しました - niku9's blogでは、たくさんの方に動画をご覧いただけたようです。
ニコニコ技術部カテゴリランキング1位になったり、2万再生超えたりと、予想を上回る反響ぶりでした。皆さんありがとうございます!
MikuMikuTrainingもそのうちバージョンアップ版を投稿しますので、その際はまたよろしくお願いいたします!
さて、本題に移ります。
7時間ほど前に、非常に興味深いARライブラリ「vuforia」の存在を知り、Unityと組み合せてARアプリを作成したので、備忘録としてまとめます。
作成したARアプリはこんな感じです。
vuforia × Unity × MMDで、「一万円をかざすと、はちゅねが喜んで踊る」ARアプリを作ってみた。
現状、AppleにDeveloperProgram申請中だからUnityで実行→内蔵カメラでキャプチャという形式だけども pic.twitter.com/J5erBiFdF6
— niku9 (@niku9Tenhou) 2013, 12月 29
DeveloperProgram申請が終わればiPhoneアプリにできるはずです。
では、vuforiaをUnityで使用する方法についてまとめます。といっても、他の方がすばらしい記事をまとめているので、本記事はそれらの架け橋をする程度です。
※Unityはインストール済みとします。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
1. Unity Extension Vuforiaの ダウンロード
まずは、https://www.vuforia.comにアクセスし、必要なライブラリをダウンロードします。この手順については、以下の記事の「まずはダウンロード」の7番までを参考に行ってください。
無料ライブラリ「Vuforia」でARアプリを作る!②【ダウンロード・ビルド篇】 | 日本VTR実験室
7番までの手順を行ったら、以下のURLに移動します。
https://developer.vuforia.com/resources/sdk/unity
今回はUnityでの開発なので、左にある「Unity Extension」を選び「Download Unity Extension 2.8.7 for Android & iOS」を選択し、ダウンロードを開始します。
「 vuforia-unity-android-ios-2-8-7.unitypackage」というファイルがダウンロードされました。
2. UnityProjectへインポート
次に、Unityを立ち上げ、新規プロジェクトを作成します。
その後、先ほどダウンロードした「 vuforia-unity-android-ios-2-8-7.unitypackage」を起動すると、インポートが始まります。
インポートすると、Assetsの下にフォルダとファイルが作成されます。
3. ARマーカーの登録 および Unityで簡単なARプロジェクトの作成
次に、自分が持っている画像をARマーカーに登録します。
ARマーカーの登録方法と、Unityで簡単なARプロジェクトの作成は以下の記事を参考にしてください。
Unity + VuforiaでARに挑戦する - Qiita
この記事ではARマーカーオブジェクトImageTargetの作成まで行っています。
カメラがこのImageTargetを認識した時、特定のオブジェクトを表示するにはImageTargetの子オブジェクトとして設定します。この画像だとhachuneがそれにあたります。
子オブジェクトはMMDでなく、まずは簡単なCubeで試してみるのがよいと思います。
以上で、簡単なARアプリは作成できるはずです。
【終わりに】
私が作成したアプリのように、MMDモデルを使用したい場合は、MMD4Mecanimを利用します。使い方、ダウンロードなどはStereoarts Homepageへどうぞ。
なお、マーカーにお札全体の画像を使用すると通過偽造及び行使等第148条に引っかかるのかもしれません。なので、私はお札の一部分だけの画像をマーカーに使用することでそれを回避しています。
また、お札は薄く、透過するので、財布などを下敷きにしないと認識率はガクンと落ちます。適切な特徴点抽出が必要だと考えます。そもそもvuforiaがどのような特徴点抽出方法なのか調査できていないので、今後調査したいと思います。(そもそも公開されているのかな?)
ここまでお読みくださりありがとうございました。手軽にARアプリを作ることができますので、ご興味のある方はぜひチャレンジしてみてください。