0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【ゼロから丁寧に解説!】Unity × Immersal SDKの手順

Last updated at Posted at 2024-09-22

はじめに

普段、IT企業で働いてますプログラマー芸人のジンバと申します!
今回はUnity × Immersal SDKでVPSを用いたARアプリを実装していきます!
現実空間に正確にオブジェクトを配置することができますよ!

VPSとは

  • Visual Positioning Systemの略
  • ARマーカーが無くても、事前にスマホで撮影しておくと空間の形状を記憶してオブジェクトを表示できる。
  • ARCore Geospatial APIやNiantic LightshipなどのVPSサービスがあるが、今回はImmersalを採用した。

image.png

https://www.sovec.net/xrchannel/feature/vps/ 
より

手順の注意

・分かりやすいようにかなりスクリーンショットを貼っています。長く感じますが、手順自体は少ないです。
・「Immersal SDK Ver 1.20.0」の情報です。今後アップデートあれば更新します。

それでは手順の説明に移ります!

アカウント登録

「Immersal Developer Portal」と検索して、Immersal Devloperのアカウントを作成します。

ファイル名 ファイル名

作成が終わると以下のようなポータル画面に移ります。後述しますが、ここでSDKをインストールしたり、マッピングしたデータを取得します。

ファイル名

アプリをインストールしてマッピングする

アプリストアで「Immersal Mapper」と検索してインストールしてください。

image2-1.png

アプリを開いてNEXTを押します。
ファイル名

先ほど作成したアカウントでログインします。

ファイル名

すると今までのスキャンを閲覧できる画面に移ります。

ファイル名

マッピング撮影をするときは、下のサイコロのようなボタンを押します。するとこのように撮影画面に移ります。

image8.png

赤ボタンを押すと撮影が始まります。周りに気をつけながら、対象の物体を色んな方向から撮影します。

image6.png

終わったらチェックボタンを押して名前をつけてSAVEします。今回は「Poster」にします。

ファイル名

するとスキャンした一覧に「Poster」が追加されました。

ファイル名

これを押して、クラウドボタンを押します。

ファイル名

そしてアップロードします。

ファイル名

デベロッパーポータルに戻り、「View your maps」をクリックします。

ファイル名

スキャン一覧に「Poster」が追加されたことが分かります。これらのデータは後ほど使用します。

スクリーンショット 2024-09-12 21.30.51.png

サンプルプロジェクトを開き、Unityで開く

デベロッパーポータルで「Download Immersal SDK 1.20.0 Core(.unitypackage)」をクリックしてパッケージをダウンロードします。
次に「Immersal SDK 1.20.0 Samples(Unity)」をクリックします。

スクリーンショット 2024-09-12 21.29.58.png

GitHubのサンプルプロジェクトのページに飛ぶのでクローンします。

スクリーンショット 2024-09-12 21.45.53.png

サンプルプロジェクトをUnityで開きます。以下のような警告が出ますが無視して進みます。

スクリーンショット 2024-09-12 21.51.10.png

プロジェクトを開くとエラーが出ます。これはまだImmersal SDKをインストールしていないからです。

スクリーンショット 2024-09-12 21.52.15.png

「Assets→Import Package→Custom Package」で先ほどダウンロードしたパッケージを選択します。

スクリーンショット 2024-09-12 22.01.08.png

スクリーンショット 2024-09-12 22.01.32.png

するとエラーが消えます。

スクリーンショット 2024-09-12 22.23.00.png

マッピングデータをインポートして、オブジェクトを配置する

デベロッパーポータルを開き、マッピングデータをダウンロードします。
「Download Map」と「Download metadata JSON」を押してダウンロードしてください。

スクリーンショット 2024-09-14 12.42.13.png

スクリーンショット 2024-09-14 12.42.49.png

これらのファイルをプロジェクトの「Map Data」フォルダに入れます。

スクリーンショット 2024-09-14 12.43.10.png

「Immersal SDK→Samples→Scenes→ContentPlacementSample」を開きます。

スクリーンショット 2024-09-22 22.41.12.png

AR Space配下に3つオブジェクトがありますが、その内2つを消して残った1つをわかりやすいように「Poster Map」に変更します。

スクリーンショット 2024-09-14 13.13.48.png

PosterMapのARMap(Script)のMap Fileにダウンロードしてきた「.bytes」ファイルをアタッチします。

スクリーンショット 2024-09-14 13.14.09.png

すると先ほど撮っていたポストの形状が点群で出るので、好きな位置にオブジェクトを置きます。今回はポスターの上にCubeを置きました。

スクリーンショット 2024-09-14 13.16.49.png

このままだと初めからCubeが表示されるので、一度非アクティブにします。

スクリーンショット 2024-09-14 22.58.01.png

PosterMapの「AR Map→Events→On First Localization」でCubeをアタッチしてSetActiveを指定します。これでフィールドが認識したときにCubeが表示されます。

スクリーンショット 2024-09-14 22.58.16.png

ビルドして撮影場所でアプリを起動する

Build SettingsでPlatformをAndroidまたはiOSにします。
また、Scenes in BuildをContentPlacementSampleにします。

スクリーンショット 2024-09-14 22.23.45.png

撮影場所で起動するとオブジェクトが現れました!

成功.png

応用

例えば複数場所のマッピングデータを使いたい場合以下のようにAR Space以下を増やします。このようにしても、別場所のマッピングのオブジェクトが表示されることはないので安心してください。

スクリーンショット 2024-09-22 22.54.35.png

マッピングの注意点

ツルツルしたところに点群ができない

画像のように左側の木目のところは点群ができますが、右側のツルツルなところは点群ができません。
コーディングされた床などは苦手かもしれないです

ツルツル.png

周りに障害物や人がいるとオブジェクトが表示されない

マッピングしたあとビルドして、周りに障害物や人がいる現地で起動してもオブジェクトが表示されないことがあります。
これはVPSが「違う場所だ」と判断してしまうからです。

告知

ご覧いただきありがとうございました!
普段、IT企業で働いてます「プログラマー芸人」ジンバです!
YouTubeもご覧くださいー!↓

初テレビ.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?