/// <summary> /// Unregister from callbacks. /// </summary> private void TearDownCallbacks() { if (spacePinningService != null) { spacePinningService.OnQRAdded -= OnQRCodeAdded; spacePinningService.OnQRUpdated -= OnQRCodeUpdated; spacePinningService.OnQRRemoved -= OnQRCodeRemoved; spacePinningService.OnQREnumerated -= OnQRCodeEnumerated; spacePinningService = null; } }
/// <summary> /// Ensure all required components exist and cache references where appropriate. /// </summary> private void CheckComponents() { if (spacePinningService == null) { spacePinningService = MixedRealityToolkit.Instance.GetService <ISpatialPinningService>(); spacePinningService?.Enable(); } if (orienter == null) { if (sharedOrienter == null) { orienter = gameObject.AddComponent <Orienter>(); } else { orienter = sharedOrienter; } } }
public void OnClick() { ISpatialPinningService spacePinningService = MixedRealityToolkit.Instance.GetService<ISpatialPinningService>(); spacePinningService?.Calibrate(); }