.wp-block-jetpack-rating-star span.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal; }

サイトアイコン NegativeMindException

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によると、このプラグインの推奨環境は以下。

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



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

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オブジェクトへの環境マッピングは是非とも試したいところ。



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



か。

実機で動作させてみた↓


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



スポンサーリンク

関連記事

Pythonのソースコードに特化した検索エンジン『Nullege』

AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する

SIGGRAPH 2020はオンライン開催

Ambient Occlusionを解析的に求める

ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救出

ZBrushでアヴァン・ガメラを作ってみる 甲羅のバランス調整

Unityをレンダラとして活用する

UnityプロジェクトをGitHubで管理する

写真に3Dオブジェクトを違和感無く合成する『3DPhotoMagic』

Amazon Web ServicesでWordPress

BlenderでPhotogrammetryできるアドオン

日本でMakersは普及するだろうか?

グローバルイルミネーションに手を出す前に、やり残したことがあるんじゃない?

Web経由でRaspberry PiのGPIOを操作したい

顔のモデリング

レンダラ制作はOpenGL とか DirectX を使わなくてもできるんだぜ

ZBrushのキャンバスにリファレンス画像を配置する

天体写真の3D動画

Raspberry PiのGPIOを操作するPythonライブラリ『RPi.GPIO』の使い方

UnityのGameObjectの向きをScriptで制御する

参考書

Unity ARKitプラグインサンプルのドキュメントを読む

Faceshiftで表情をキャプチャしてBlender上でMakeHumanのメッシュを動かすデモ

Accord.NET Framework:C#で使える機械学習ライブラリ

ZBrushで仮面ライダー3号を造る ベース編

ZBrushでアヴァン・ガメラを作ってみる 口のバランス調整

法線マップを用意してCanvas上でShadingするサンプル

OpenMesh:オープンソースの3Dメッシュデータライブラリ

オープンソースの顔認識フレームワーク『OpenBR』

OpenCV バージョン4がリリースされた!

ZBrushでリメッシュとディティールの転送

iPhone 3GSがますます欲しくなる動画

オープンソースのテクスチャマッピングシステム『Ptex』

ラクガキの立体化 3Dプリント注文

HD画質の無駄遣い

映画『シン・ウルトラマン』 メイキング記事まとめ

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『TouchScript』

この本読むよ

Meta Quest 3を購入!

iPhoneをSSHクライアントとして使う

物理ベースレンダリングのためのマテリアル設定チートシート

ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調整 その2

モバイルバージョンを終了