Я разработал 3D-модель, имеющую пол и два цилиндра (для закругленных колонн) в единство. Я написал сценарий для навигации, но не могу видеть путь навигации на устройстве Android, тогда как в редакторе Unity я получаю строку навигации.
Я использую два файла сценариев:
NavigationTarget.cs
с использованием UnityEngine;
публично класс NavigationTarget: MonoBehaviour {
}
NewIndoorNav.cs
с использованием System.Collections .Generic;
с использованием System.Linq;
с использованием Unity.AI.Navigation;
с использованием UnityEngine;
с использованием UnityEngine.AI;
с использованием UnityEngine.XR.ARFoundation;
публичный класс NewIndoorNav : MonoBehaviour {
[SerializeField] частный Transform player;
[SerializeField] частный ARTrackedImageManager m_TrackedImageManager;
[SerializeField] частный GameObject trackedImagePrefab;
[SerializeField] частная строка LineRenderer;
частный список NavigationTargets = new List();
частный NavMeshSurface navMeshSurface;
частный NavMeshPath navMeshPath;
частный GameObject NavigationBase;
private void Start() {
navMeshPath = new NavMeshPath();
[img]https://i.sstatic.net/3INtM2lD.png[/img] Я разработал 3D-модель, имеющую пол и два цилиндра (для закругленных колонн) в единство. Я написал сценарий для навигации, но не могу видеть путь навигации на устройстве Android, тогда как в редакторе Unity я получаю строку навигации. Я использую два файла сценариев: [list] [*]NavigationTarget.cs с использованием UnityEngine; публично класс NavigationTarget: MonoBehaviour { }
[*]NewIndoorNav.cs с использованием System.Collections .Generic; с использованием System.Linq; с использованием Unity.AI.Navigation; с использованием UnityEngine; с использованием UnityEngine.AI; с использованием UnityEngine.XR.ARFoundation; публичный класс NewIndoorNav : MonoBehaviour { [SerializeField] частный Transform player; [SerializeField] частный ARTrackedImageManager m_TrackedImageManager; [SerializeField] частный GameObject trackedImagePrefab; [SerializeField] частная строка LineRenderer; частный список NavigationTargets = new List(); частный NavMeshSurface navMeshSurface; частный NavMeshPath navMeshPath; частный GameObject NavigationBase; private void Start() { navMeshPath = new NavMeshPath(); [code] // disable screen dimming Screen.sleepTimeout = SleepTimeout.NeverSleep; [/code] } private void Update() { if (navigationBase != null && NavigationTargets.Count > 0 && navMeshSurface != null ) { //navMeshSurface.BuildNavMesh(); NavMesh.CalculatePath(player.position, NavigationTargets[0].transform.position, NavMesh.AllAreas, navMeshPath); [code] if (navMeshPath.status == NavMeshPathStatus.PathComplete) { line.positionCount = navMeshPath.corners.Length; line.SetPositions(navMeshPath.corners); } else { line.positionCount = 0; } } [/code]