UnityでARKit2.0

ここ最近iOSのARKitやAndroidのARCoreのようなスマホARのSDKが充実してきているようなので、オイラも遊んでみたくなった。

ARKit2.0

オイラが持っているスマホはiPhone 8だけなので、とりあえずARKitを触ってみよう。ARKit2.0は色々とすごいらしいですね。
https://developer.apple.com/videos/play/wwdc2018/602/

ということで、ARアプリの開発環境は必然的にMacとXCodeになる。
最新のARKit2.0を使うには最新のMacを購入しないと無理かと思ってたけど、オイラが今持っている古いMacBook Air(2012年モデル)もOSを最新のMojaveへアップデートしたらiOS12.1対応のXcode 10.1が使えるようだ。(7年前のハードなのに!)
MacBook Air購入時にスペックを割と高めにしておいて良かった。

Unity-ARKit-Plugin

今時はゲームエンジンのプラグインという形でAR系(主に画像認識)の機能を利用してコンテンツを作るのが当たり前になっているので、当然UnityからARKitの機能を利用できるプラグインが配布されています。
(Apple公式ではなく)Unity TechnologiesのリポジトリからUnity-ARKit-Pluginおよびサンプルプロジェクトがダウンロードできる↓
https://bitbucket.org/Unity-Technologies/unity-arkit-plugin

README.mdによると、このプラグインの推奨環境は以下。

  • Unity 2017.4以上
  • Xcode 10.0以上とARKitフレームワークの入った最新のiOS SDK
  • ARKitをサポートしたiOSデバイス(iPhone 6S以降、iPad(2017)以降)
  • iOS 12以上

これならオイラでも満たせるぞ。


スポンサーリンク


オイラの開発環境は以下。

  • macOS 10.14.2 (Mojave)
  • Unity 2018.3.0f2
  • Xcode 10.1
  • iPhone 8 (iOS 12.1.2)

Apple Developer アカウントの設定についてはここを参考に↓
https://docs.unity3d.com/ja/2018.3/Manual/iphone-GettingStarted.html
https://docs.unity3d.com/ja/2018.3/Manual/iphone-accountsetup.html

昔と違って、今はiOS開発もただ動作を試すだけなら無料でできるんですね。

まずはこの記事を参考にサンプルシーンをビルドして実機で動かしてみよう↓
http://nn-hokuson.hatenablog.com/entry/2018/09/19/205354

ダウンロードしたサンプルプロジェクトを展開し、
Assets/UnityARKitPlugin/Examples/UnityARKitScene
を開いてビルドしてみる。
UnityのBuild SettingでビルドするPlatformにiOSを選択し、MacにiPhone実機を繋いだ状態でBuild And Runを押す。



ビルドが始まるとXCodeプロジェクトが生成され、自動的にXCodeが立ち上がり、iOSアプリのビルドが進む。
と、ここに来てXCode上でエラー発生↓



TeamにはXCodeに登録したAppleIDに紐づいたチーム情報を指定しないといけないらしい。
Unityから生成されるXCodeプロジェクトではこの設定がデフォルトで空になっていた。Unityから生成されたXCodeプロジェクト上で手動で設定して、
XCodeの▶️ボタンを押してやればビルドが通る。(これってビルドの度に毎回手動でやらないといけないの?)

実機にアプリのアイコンが追加された。



ビルドしたサンプルシーンUnityARKitSceneは、画像認識で平面を検出して、タップするとそこにCubeを配置するというシンプルなもの。

ARKit2.0のポテンシャルについては、Apple公式のドキュメントを読んだ方が良いんだろうか。
https://developer.apple.com/documentation/arkit

CGオブジェクトへの環境マッピングは是非とも試したいところ。

UnityEnvironmentProbe

https://blogs.unity3d.com/jp/2018/06/14/whats-new-in-unity-arkit-plugin-for-arkit-2/

映り込みのサンプルシーンは
〜/Examples/ARKit2.0/UnityAREnvironmentTexture/UnityAREnvironmentProbeAnchor




〜/Examples/ARKit2.0/UnityAREnvironmentTexture/UnityAREnvironmentProbeAnchorManual



か。

実機で動作させてみた↓


スポンサーリンク

View this post on Instagram

UnityからiOSのARKit 2.0の機能を使うサンプルを試してみた

NegativeMindさん(@negative0mind)がシェアした投稿 –


ARKitRemote

頻繁に修正してデバッグしていくならARKitRemoteを使った方が良いんだろうな。
http://nn-hokuson.hatenablog.com/entry/2018/10/17/190203
https://lilea.net/lab/how-to-use-arkit-remote/

AR Foundation

どうやらUnityでは、マルチプラットフォームAR開発環境も用意しているらしい。AR KitとAR Coreに対応しているらしい。
https://docs.unity3d.com/Packages/com.unity.xr.arfoundation@1.0/manual/index.html
http://tsubakit1.hateblo.jp/entry/2018/11/21/211400



スポンサーリンク

関連記事

OpenCVベースのマーカーARライブラリ『OpenAR』
タマムシっぽい質感
Google App Engineのデプロイ失敗
顔モデリングのチュートリアル
.NETで使えるTensorFlowライクなニューラルネットワークライブラリ『NeuralNetwo...
天体写真の3D動画
注文してた本が届いた
定数
R-CNN (Regions with CNN features):ディープラーニングによる一般物体...
中学3年生が制作した短編映像作品『2045』
PythonでMayaのShapeノードプラグインを作る
ZBrushのキャンバスにリファレンス画像を配置する
Unite 2014の動画
ZBrushで仮面ライダー3号を造る 仮面編 Dam Standardブラシでディティールを彫る
『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイクダウン
『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイクダウン まとめ
ZBrush 4R7
ラクガキの立体化 反省
clearcoat Shader
法線マップを用意してCanvas上でShadingするサンプル
Unityで360度ステレオVR動画を作る
UnityからROSを利用できる『ROS#』
フォトンの放射から格納までを可視化した動画
Google Colaboratoryで遊ぶ準備
ZBrushのZScript入門
タダでRenderManを体験する方法
Maya LTのQuick Rigを試す
Blender 2.81でIntel Open Image Denoiseを使う
3D復元技術の情報リンク集
Point Cloud Libraryに動画フォーマットが追加されるらしい
HD画質の無駄遣い その2
SculptrisとBlenderで作ったGodzilla 2014 (Fan Made)
布地のシワの法則性
NICOGRAPHって有名?
『ピクサー展』へ行ってきた
OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる
ZBrushで仮面ライダー3号を造る 仮面編 DynaMesh
続・ディープラーニングの資料
スクレイピング
Unite 2017 Tokyoに行ってきた
Boost オープンソースライブラリ
ROSの薄い本

コメント