private void Start() { arLocationOrientation = GetComponent <ARLocationOrientation>(); arLocationProvider = ARLocationProvider.Instance; if (WaitForARTrackingToStart) { arLocationProvider.Mute(); } #if !ARGPS_USE_VUFORIA var arSession = FindObjectOfType <ARSession>(); if (!arSession) { throw new NullReferenceException("[AR+GPS][ARLocationManager#Start]: No ARSession found in the scene!"); } SessionManager = new ARFoundationSessionManager(arSession); #else SessionManager = new VuforiaSessionManager(); #endif SessionManager.DebugMode = DebugMode; SessionManager.OnARTrackingStarted(ARTrackingStartedCallback); SessionManager.OnARTrackingRestored(ARTrackingRestoredCallback); SessionManager.OnARTrackingLost(ARTrackingLostCallback); groundHeightDummy = new GameObject("ARLocationGroundHeight"); groundHeightDummy.transform.SetParent(MainCamera.transform); groundHeightDummy.transform.localPosition = new Vector3(); groundHeight = groundHeightDummy.AddComponent <GroundHeight>(); }
private void Start() { arLocationOrientation = GetComponent <ARLocationOrientation>(); arLocationProvider = ARLocationProvider.Instance; if (WaitForARTrackingToStart) { arLocationProvider.Mute(); } #if !ARGPS_USE_VUFORIA var arSession = FindObjectOfType <ARSession>(); if (!arSession) { throw new NullReferenceException("[AR+GPS][ARLocationManager#Start]: No ARSession found in the scene!"); } SessionManager = new ARFoundationSessionManager(arSession); #else SessionManager = new VuforiaSessionManager(); #endif SessionManager.DebugMode = DebugMode; SessionManager.OnARTrackingStarted(ARTrackingStartedCallback); SessionManager.OnARTrackingRestored(ARTrackingRestoredCallback); SessionManager.OnARTrackingLost(ARTrackingLostCallback); }