MawaLog

一日一日、楽しく生きる。技術と音楽が好き。

開発日誌::ARデモアプリをARKit+Unityで作ったときのハマりどころメモ(2018年11月動作確認)

f:id:k_mawa:20181109120332p:plain

コメント

上記のキャプチャ画像のようなARKit2.0の体験デモをビルドまでしてみた。これは今年の9月にバージョンアップがあったらしいので、すごく新しい技術なんですね^^

平面を検知したら青い枠で囲まれ、その青いわくにタップすると、キューブが配置されるというだけのデモ。

これをどう実装したかについて主にハマったところ等をまとめた。

利用チュートリアル

おもちゃラボさんの記事を主に参考資料として進めました。

nn-hokuson.hatenablog.com

環境情報

自分としては、今後ローカル開発をGPUなどの環境が良いWinで行い=>ビルドをMacと分業体制で進めたいため、このあたりが重要です。

【1】プロジェクトファイル一式の入手

  • Win機(OMEN)
  • Windows10 Pro

今回はサンプルシーンをビルドするだけなので、実質ローカル開発はなしですが、一応Macで全完結させない練習としてWinからダウンロードし、フラッシュメモリMacにプロジェクトファイルを解凍済のものをフォルダごと移動しました。画像ファイルなどは圧縮解凍をWin-Macで使いまわした際に不具合がでることもあるので、そういうのが大丈夫かのチェックです。

【2】ビルド

  • MacMac mini
  • OS High Serra(そろそろmojaveにしないといけないかな・・・)
  • Unity ARKit Plugin ( ARKit v2.0)
  • Unity 2018.2.12f1
  • Xcode 10.1
  • 実機 iPhone 8

一応ARCore のようなビルドするのに下記SDKはいらなかったです。(AndroidのようにJAVA関係ないからかな)つまり、UnityEditorのExternal Tool はいじらなかったです。

データ処理の流れ

Unity@Winでプロジェクト構築
(今回は中身はいじってないので追加検証必要)

プロジェクトを丸ごとUSBメモリMacに移動。

Unity@MaciOSビルド

○○.xcodeprojと、関連ファイル群が生成される

Xcodeでビルド
(○○.xcodeprojを選択して開く&実機をPCにつなぐ。なおXcode内でのパラメーターいじりはdevelopment teamのところのみ(後述))

はまりどころ

1 Xcodeのビルドエラー1:XcodeとOSが古い問題

Xcodeでビルド時にエラー。OSとXcodeが古い可能性があったので、アップデート。mojaveにしようと思ったのですがどうもHighSieraの足りないパッケージをインストールしてアップデート完了したみたいです。

これが何故か苦労することに・・・

mocotan.hatenablog.com

こういう方もいるようで、自分はがちゃがちゃやってたらAppStoreからアップデートできましたが、30分くらいかかりました。ゲームしてひたすら待ちました・・・
これをすると同じエラーはなくなりました

2 Xcodeのビルドエラー2:development team 署名なし問題

Xcodeでビルド時にこれがでた。

Showing Recent Messages
:-1: Signing for "Unity-iPhone" 
requires a development team.
 Select a development team 
in the project editor. 
(in target 'Unity-iPhone')

解決策
nn-hokuson.hatenablog.com

この記事のチームを選択したらうまくいきました!

3 Xcodeのビルドエラー3:your device is locked(?!)

Xcodeでビルド実機インストール中にでた。

Development cannot be enabled 
while your device is locked. 
Please unlock your device and reattach. 
(0xE80000E2).

解決策
teratail.com

この記事のにあるように実機をリセットすると行けました。位置情報だけリセットでもいい可能性があります。

teleporter.hateblo.jp

4 Xcodeのビルドエラー4:iPhone is busy(!?)

Xcodeでビルド時にこれがでた。(おいおい・・・エラー多すぎて挫折しそうだよ苦笑)

iPhone is busy: Preparing debugger support for iPhone

解決策

teleporter.hateblo.jp

この記事にそって、再起動をテスト実機にしたらできました。再起動は実機リセット処理の後にしました。

 無事動いた・・・

一苦労でしたね〜^^; 動いてよかった・・・

[もうちょっとこの辺色々勉強したいなという方向け告知]
私の所属する開発チームMulesでは、今回の記事のような、AR等のxRの開発情報を共有したり、議論したりできるみんなで勉強を進めていくもくもく会的なSlackグループ、xrdevja(xR Development Japanを略してます)をはじめました。ので、ご興味ある方は、誰でも参加できるので、是非ご参加ください^^ 下記フォームから参加申請可能です。(一応念のため、もちろん無料です。)

Discordのサーバーもあります。こちらもご利用可能です。 discord.gg

リアルイベントもときどき実施しています。DiscordやSkypeで遠隔で参加可能なので、東京以外の在住の方や、仕事の都合などで会場に直接来られない方もお気軽に参加いただけるイベントを多くしています。実際西日本の開発者さん、クリエイターさんも参加いただいています。主催者として、初心者にも温かいアットホームさを大事にしたいと思って運営しています。 xrdevja.connpass.com


お気軽に押していただければ励みになります^^