This repository has been archived on 2025-04-28. You can view files and clone it, but cannot push or open issues or pull requests.
ARPlusSystem/ARPlusSystem-250418/Assets/ARLocation/Mapbox Routes/Editor/GameObjectMenuItems.cs

38 lines
1.5 KiB
C#
Raw Permalink Normal View History

using UnityEngine;
using UnityEditor;
namespace ARLocation.MapboxRoutes
{
public static class GameObjectMenuItems
{
[MenuItem("GameObject/AR+GPS/Mapbox Route")]
public static GameObject CreateMapboxRoute()
{
var go = new GameObject("Mapbox Route");
var route = go.AddComponent<MapboxRoutes.MapboxRoute>();
var signpostPath = AssetDatabase.GUIDToAssetPath("154e5264001534d7999c9720b114562d");
var signpostPrefab = AssetDatabase.LoadAssetAtPath<MapboxRoutes.AbstractRouteSignpost>(signpostPath);
var pathRenderer = go.AddComponent<MapboxRoutes.NextStepRoutePathRenderer>();
var indicator = go.AddComponent<MapboxRoutes.DefaultOnScreenTargetIndicator>();
var arrowPath = AssetDatabase.GUIDToAssetPath("19a300465515241c2bb5670f7b18e69b");
var arrow = AssetDatabase.LoadAssetAtPath<Sprite>(arrowPath);
var lineMaterialPath = AssetDatabase.GUIDToAssetPath("697c3d00ed75e4c388f1112e6817fa65");
var lineMaterial = AssetDatabase.LoadAssetAtPath<Material>(lineMaterialPath);
indicator.ArrowSprite = arrow;
indicator.NeutralArrowDirection = DefaultOnScreenTargetIndicator.ArrowDir.Right;
pathRenderer.Settings.LineMaterial = lineMaterial;
route.Settings.SignpostPrefabs.Add(signpostPrefab);
route.Settings.PathRenderer = pathRenderer;
route.Settings.OnScreenIndicator = indicator;
return go;
}
}
}