Closed37

Immersal ARアプリでARCore Record & Playback APIを使ってみる(失敗)

にー兄さんにー兄さん

動機

  • Immersalを使ったARアプリを作っている
  • 特定の場所に行かないと体験できない
  • ゆえに場所に行かないとデバッグできない
  • 新しく出たARCore APIを使ってみたい
    • Record &Playback APIが良さげ
にー兄さんにー兄さん

ARCore(ARFoundation)もImmersalもどちらもsampleプロジェクトがあるけど
このさいチュートリアルに沿って新しいシーンを作ってもいいかなって思う

にー兄さんにー兄さん

手順としては、

  1. ImmersalのサンプルプロジェクトをクローンしてUnity2020.3で動くかやってみる
  2. ARFoundationのバージョンを上げる→テスト
  3. Streaming Assetsに別のRecord API使って撮った動画を入れて
  4. ARFoundation Samplesを参考にPlayback APIをたたいてみる
にー兄さんにー兄さん

とりあえず自分の部屋をRecording APiでキャプチャしたものを取得した
これを使って部屋のImmersalアプリを試してみる

にー兄さんにー兄さん

今回はMultiMapSampleを使用する
Immersal SDK > Open SettingsからImmersalアカウントでログインして、
AR Map Downloderで自室のマップをDLする

にー兄さんにー兄さん

とりまARCore Session Recorderスクリプトをarfoudation-smapleを参考に作成し、シーンにアタッチした

にー兄さんにー兄さん

GUIのボタンでStart Recordingが出てきたので押すと、録画ができた
実際にデバイスの中に動画が入っていたが、なんか再生のされ方が変だった。なんだろう

にー兄さんにー兄さん

playbackに関してはダメだった
なぜかplaybackボタンを押した瞬間アプリがクラッシュしてしまう

にー兄さんにー兄さん

ちゃんと録画も再生も、完璧にはできなかったが特にエラーなく実行されそうだったってことは
あと少しな気がするんだよなぁ

にー兄さんにー兄さん

できるかどうかわからないけど、Unity2021.2でビルドしたarfoundation-samplesの、
recording apiで取得した動画ファイルを、今回のプロジェクトのpersistantDataPathに突っ込んで、
それをAwakeでplaybackするようにしてみた
どうなるんだろうか......

にー兄さんにー兄さん

深夜テンションなのでこれ以上ちまちま作業していられるか!!ノリでUnity 2021.2betaにバージョンアップしていくぞいくぞいくぞ~~
Immersal君どうか耐えてくれ

にー兄さんにー兄さん

2021.2にしたらエラーが何個か出た
ざっと見た感じネットワーク関係のAPIかな?

にー兄さんにー兄さん

奇跡的にエラー箇所はマルチプレイヤー系のサンプルスクリプトでとどまったのでエラー摘出完了

にー兄さんにー兄さん

Immersalが動くかもわからない、ただRecord & Playback APIが動くための条件な可能性が高い
Immersalが動かないようだったら、もうこれらのライブラリは相いれないものだったと諦めるかな

にー兄さんにー兄さん

No ARCoreSessionSubsystem availableと出てしまった、いきなりこれは何だろうな......

にー兄さんにー兄さん

arcoreのほうでエラーが出るのは想定外、というかおかしいな
別のアプローチをとって見よう

にー兄さんにー兄さん

arfoundation-samplesのほうでサンプルシーンにImmersalを使ってみる

にー兄さんにー兄さん

Immersal SDK 1.13.1とTextMeshProをインポートして、
シーンにImmersal SDKプレハブ(AR Localizerをアタッチ)とAR Spaceを作成

にー兄さんにー兄さん

ビルドしてみたら見たことないエラーが出た、なんだろうこれ

にー兄さんにー兄さん

API Levelの話だろうか?
Player Settingsで変えられそうだけど、このタイミングで出てきたのが謎過ぎて怖い

にー兄さんにー兄さん

ビルドができたの実行してみた結果、まずImmersalは動作していなさそうだった
ずっとスマホをかざしていたがマップの点群の位置が変化することはなかった

そしてなぜかPlaybackのときにクラッシュする
同じ構成でImmersalがない状態だとうまくPlaybackするのに、なぜかImmersalが一緒になるとクラッシュするようになってしまった

にー兄さんにー兄さん

試しにImmersalをサーバーサイド位置合わせにしてみたが依然変わらなかった

このスクラップは2021/08/07にクローズされました