くじらDのブログ

主に3DCGやUnity関連の開発メモ

Vuforia の Gland Plane 試す

僕は主にARの開発ではARKitを使って開発していますが、ARKitはAppleが提供しているARフレームワークのため、Android端末では使うことができない。
GoogleのARCoreもあるが、まだまだ使える端末は多くないし、日本国内だと今後各メーカーがリリースする端末もARCoreが使える状況かどうかわからない。
(それはVuforiaも同じだけど…)

また、ARKitでiOS用アプリ、ARCoreでAndroidアプリを作るにはそれぞれのフレームを理解して、2倍の工数をかけて開発しなければならない。

ということで、VuforiaがARkitやARCoreのように平面認識できるようになったので、ためしてみた。ARKitやARCoreが頑張っているので、この機能がリリースされて1年くらい経ってるがあまり認知されていないせいか、ドキュメントが少ないので、世の中でもす導入を検討している人がいれば参考になればと思う。(今回は導入の部分のみになりますが)

ちなみに、2019年2月23日時点でVuforiaがサポートしている名言している端末は下記のリンクに記載されている
https://library.vuforia.com/articles/Solution/vuforia-fusion-supported-devices.html

 

 開発環境
Unity 2018.2.7f1
Vuforia 8.0.10

 

なお本記事は下記公式のドキュメントにも記載してあります。

Introduction to Ground Plane in Unity

 

まずはVuforiaのSDKを使うよう設定を変更

 

 

f:id:ninotk:20190224002700j:plain

 

PlayerSetting のXRSettings からVuforia Augmented Reality Supportedにチェックを入れる

 

f:id:ninotk:20190224003710j:plain

ツールバーの Window にVuforia Configrationがあるので選択する
GlobalのAddLicenceKey にライセンスキーを入力する
(下のAdd Licence をクリックすればVuforiaのサイトに飛ぶのでそこからログインして、プロ家ジェクト名などを入力すれば開発用のLicenceKeyが手になる)

 

f:id:ninotk:20190224002910j:plain

Hierarthyを右クリックして表示されるオブジェクト追加のウィンドウにVuforiaEngineの項目が追加されてるので、どれでもなにかクリックして追加しようとすれば、SDKを一式ダウンロードすることができる


(今回はVuforiaに必要なARCameraを追加してみた)
ARCameraを追加したらCameraは削除してOK

 


ここからは平面認識のためのオブジェクトを置いていく

 

f:id:ninotk:20190224003201j:plain

Hierarthyを右クリックしてVuforiaからGland Plane Stage を配置する
(このオブジェクト配下に置いたものが床認識時に表示される)


とりあえずCubeを置いてみよう

 

f:id:ninotk:20190224003243j:plain

次は同じにVuforiaEngineからPlaneFinderを追加する
その中からContentPositioningBehaviourのAnchorStageに先程追加したGroundPlaneStageをアタッチする

AnchorStageの下にあるDuplicate Stageは GroundPlaneに配置したオブジェクトを複製したい
ときはtrueにしておく必要がある(デフォルトはtrue)
ただ移動させたい場合はfalseにしておけば良い

 

 

Duplicate Stage -> true

f:id:ninotk:20190223164357g:plain

 

 

Duplicate Stage -> false 

f:id:ninotk:20190223164301g:plain