Unity MapboxのMaps SDK for Unity使用方法
作成日時:2019/09/17
更新日時:2019/09/17
この記事の確認環境
macOS Mojave
Unity Version 2019.1.8f1 Personal
Maps SDK for Unity v2.0.0
Unityパッケージのダウンロード
https://www.mapbox.com/install/unity/ にアクセスし、mapbox-unity-sdk_v2.0.0.unitypackage と表示されているボタンをクリックで mapbox-unity-sdk_v2.0.0.unitypackage をダウンロードします。
ダウンロードしたパッケージをUnityにインポートします。
Unityメニューの[Assets] > [Import Package] > [Custome Package...]を選択、ダウンロードしたmapbox-unity-sdk_v2.0.0.unitypackageを選択しインポートします。
このバージョンのUnityでは以下のようなエラーが表示されるため、Unityプロジェクトの[Packages] > [manifest.json]末尾に"com.unity.xr.legacyinputhelpers": "1.0.0"を追加で対応します。
Assets/GoogleARCore/SDK/InstantPreview/Scripts/InstantPreviewManager.cs(32,23): error CS0234: The type or namespace name 'SpatialTracking' does not exist in the namespace 'UnityEngine' (are you missing an assembly reference?)
セットアップ
Unityのメニューに[Mapbox]が追加され、[Mapbox] > [Setup]のウィンドウが自動的に開きます。
こちらのAccess Tokenに自身のアクセストークンを入力し[Submit]ボタンを押すと認証が行われ、成功すると[Valid]の表示がされます。
アクセストークンは以下のページにて確認可能です。
https://account.mapbox.com/access-tokens/
サンプルの確認
サンプルについてのドキュメント
https://docs.mapbox.com/unity/maps/examples/
[Assets] > [Mapbox] > [Examples]の中に各種サンプルが含まれているので、各フォルダ内にあるシーンを開いてゲームを再生すると確認ができます。
スクリプト
マップデータの管理を行うスクリプト
Assets/Mapbox/Unity/Map/AbstractMap.cs
[GENERAL],[IMAGE],[TERRAIN],[MAP LAYERS]の項目があります。
[MAP LAYERS]の[Data Source]に[None]以外を設定すると[POINTS OF INTEREST],[FEATURES]等の項目が表示されます。
起動時に現在位置のマップ表示を行うスクリプト
Assets/Mapbox/Unity/Map/InitializeMapWithLocationProvider.cs
Assets/Mapbox/Unity/Location/LocationProviderFactory.cs
Unityエディター上で起動した場合にプレイヤーが移動するルートを記載しているファイル
Assets/Mapbox/Unity/Location/ExampleGpsTraces/Helsinki.txt
→ [Assets/Mapbox/Unity/Location/EditorLocationProviderLocationLog.cs]の[Location Log File]に設定されている。