public void Update(Frame frame) { if (frame.Camera.TrackingState != this.lastTrackingState || frame.Camera.TrackingFailureReason != this.lastTrackingFailureReason) { this.lastTrackingState = frame.Camera.TrackingState; this.lastTrackingFailureReason = frame.Camera.TrackingFailureReason; Debug.WriteLine($"Tracker state changed: {this.lastTrackingState}, {this.lastTrackingFailureReason}."); } Task.Run(() => this.spatialAnchorsSession.ProcessFrame(frame)); }
/// </inheritdoc> public void ProcessFrame(object frame) { var arFrame = frame as Frame; if (arFrame.Camera.TrackingState != this.lastTrackingState || arFrame.Camera.TrackingFailureReason != this.lastTrackingFailureReason) { this.lastTrackingState = arFrame.Camera.TrackingState; this.lastTrackingFailureReason = arFrame.Camera.TrackingFailureReason; } Task.Run(() => this.spatialAnchorsSession.ProcessFrame(arFrame)); }