【Unity】ARCoreでUnityちゃんを召喚する

f:id:tm8r:20170906102209j:plain
ARCore出ましたね!TangoさんRIP。

というわけで早速サンプルをいじってUnityちゃんを召喚してみます。

動作環境について

現状はドキュメントに書いてある通り、動作を確認する場合PixelかGalaxyS8が必要です。
一応すり抜ける術もいくつかあるようなので一応貼ってきます。
ARCoreをPixelやS8以外の端末で動かす - Qiita

GitHub - tomthecarrot/arcore-for-all: Google ARCore for "unsupported" Android devices
後者が有志のサポート外の端末でもARCore動かそうぜというプロジェクトです。
現在の対応状況は以下で確認できます。
arcore-for-all/Device-Research.md at master · tomthecarrot/arcore-for-all · GitHub
ちなみに個人的に持ってるGalaxyS6はどちらも動作対象外。かなしみ。

準備

以下の指示に従って準備します。
Getting Started with Unity

まずはSDKAndroid端末に入れるARCoreのapkのダウンロード。
SDK Preview for Unity
ARCore Service apk

そして手持ちの対応端末をUSBで接続して以下を実行。

adb install -r -d arcore-preview.apk

次にUnityのプロジェクトの準備。
上のドキュメントにはUnity2017.2b9以降ならおっけーと書いてありますが、b10だと動かなかったので現時点ではb9を使うのがよさそう。
(エラー見る限りメソッド名かパッケージあたりが変わった?)

2017.09.13追記:現在はUnity 2017.2 Beta 11を使ってねと書いてあり、実際にこのバージョンで動作したのでこちらをオススメします。

任意の名前で3Dのプロジェクトを作成し、ダウンロードしたSDKを入れます。
次に以下の作業を行います。

  • File>Build SettingsからAndroidにSwitch Platform
  • 同画面(もしくはEdit > Project Settings)からPlayer Settingsを開く
    • Other Settings > Multithreaded Renderingのチェックを外す
    • Other Settings > Package Nameを一意な名前に変更(com.example.helloARなど)
    • Other Settings > Minimum API LevelをAndroid 7.0以上に
    • Other Settings > Target API LevelをAndroid 7.0または7.1に
    • XR Settings > ARCore Supportedにチェック

f:id:tm8r:20170906161557p:plain
f:id:tm8r:20171004115741p:plain
こんな感じ。

また、GalaxyS8などを使う場合、Resolution and PresentationのAspect Ratio ModeをLegacy Wide Screen(1.86)にしておかないとカメラが縦に引き伸ばされる感じになります。
f:id:tm8r:20170906161603p:plain

早速プレハブを差し替える

GoogleARCore > HelloARExample > ScenesのHelloARを適当な場所にコピーして開きます。(そのまま編集してもよいです)
次にコピーしたHelloARをBuild SettingsのScenes In Buildにぶっこみます。
f:id:tm8r:20170906161551p:plain

次に、このシーンにあるExampleControllerに追加されているHelloARControllerを選択してInspectorを開きます。
すると、AndyAndroidPrefabというフィールドがあるので、こちらに設定されているAndyを差し替えたいプレハブに変更。
最後にプレハブにPlaneAttachmentコンポーネントを追加すれば完了です。かんたん!
f:id:tm8r:20170906161600p:plain

完成

今回はSDのUnityちゃんに差し替えてみました。
f:id:tm8r:20170906165223j:plain
ちなみにこの画像では上の作業に加えて無理矢理影を出したりしてます。

f:id:tm8r:20170906165208j:plain
もちろん回り込むことも出来ます。やったぜ。

次はライトもよしなにしてもうちょっといる感を出したい。
影の解説はまた今度…!

f:id:tm8r:20170906162925p:plain
この作品はユニティちゃんライセンス条項の元に提供されています

スポンサーリンク