private void _OnARKitFrameUpdated(UnityEngine.XR.iOS.UnityARCamera camera) { if (_frameHandle != IntPtr.Zero) { NativeSession.FrameApi.Release(_frameHandle); _frameHandle = IntPtr.Zero; } if (_sessionEnabled) { _frameHandle = _arCoreiOSHelper.GetARKitFramePtr(_realArKitSessionHandle); ExternApi.ArSession_updateAndAcquireArFrame( _sessionHandle, _frameHandle, ref _frameHandle); } if (NativeSession != null) { NativeSession.OnUpdate(_frameHandle); } if (EarlyUpdate != null) { EarlyUpdate(); } }
private void _OnARKitFrameUpdated(UnityEngine.XR.iOS.UnityARCamera camera) { if (m_FrameHandle != IntPtr.Zero) { NativeSession.FrameApi.Release(m_FrameHandle); m_FrameHandle = IntPtr.Zero; } if (m_SessionEnabled) { m_FrameHandle = ExternApi.ARCoreARKitIntegration_getCurrentFrame(m_RealArKitSessionHandle); ExternApi.ArSession_updateAndAcquireArFrame( m_SessionHandle, m_FrameHandle, ref m_FrameHandle); } if (NativeSession != null) { NativeSession.OnUpdate(m_FrameHandle); } if (EarlyUpdate != null) { EarlyUpdate(); } }
private void OnTrackingChangedEvent(UnityEngine.XR.iOS.UnityARCamera camera) { switch (camera.trackingState) { case UnityEngine.XR.iOS.ARTrackingState.ARTrackingStateNormal: trackingState = TrackingState.Tracking; break; case UnityEngine.XR.iOS.ARTrackingState.ARTrackingStateLimited: trackingState = TrackingState.LostTracking; break; case UnityEngine.XR.iOS.ARTrackingState.ARTrackingStateNotAvailable: default: trackingState = TrackingState.Unknown; break; } }