private void Start() { // Our Container API container = new ContainerAPI(Game.ForceVision); container.NativeBridge.OnLowMemory += OnLowMemory; // Setup the SDK Sdk.SetLogger(new VisionSdkLoggerProxy()); OnSDKReady(); Sdk.StereoCamera.UseMagnetometerCorrection = false; UIHolder.parent = Sdk.StereoCamera.transform; UIHolder.SnapToZero(); ControlsPrompt.SetActive(false); PreparePanel.SetActive(true); currentState = PrepareHeadsetState.TrayInHeadset; }
private void OnButtonDown(object sender, ButtonEventArgs eventArguments) { switch (currentState) { case PrepareHeadsetState.TrayInHeadset: currentState = PrepareHeadsetState.ConnectionFound; break; case PrepareHeadsetState.Controls: AudioEvent.Play(AudioEventName.Ftue.Stereo.CheckLaunch, gameObject); if (FtueDataController.IsFtueComplete(FtueType.Intro)) { LoadScene(container.PlayingDarkSide ? DarkSideGameScene : LightSideGameScene); } else { LoadScene(container.PlayingDarkSide ? DarkSideFtueScene : LightSideFtueScene); } break; } }
private void Update() { if (currentState > PrepareHeadsetState.TrayInHeadset && !Application.isEditor) { HMDConnectPopup.CheckConnection(); } switch (currentState) { case PrepareHeadsetState.NoConnection: if (!HMDConnectPopup.IsShowing()) { currentState = PrepareHeadsetState.ConnectionFound; } break; case PrepareHeadsetState.ConnectionFound: // if connection is found, either show the controls panel or go straight to main game if (FtueDataController.IsFtueComplete(FtueType.Intro)) { LoadScene(container.PlayingDarkSide ? DarkSideGameScene : LightSideGameScene); } else { currentState = PrepareHeadsetState.Controls; } break; default: if (HMDConnectPopup.IsShowing()) { currentState = PrepareHeadsetState.NoConnection; } break; } PreparePanel.SetActive(currentState == PrepareHeadsetState.TrayInHeadset); ControlsPrompt.SetActive(currentState == PrepareHeadsetState.Controls); }