// Awake is called first at app startup. void Awake() { running = false; bridge = new XRNativeBridge(enableRemote); bridge.Create(GetRenderingSystem()); if (EnableRemote()) { editorBridge = new XREditorBridge(); } xrEnvironment = XRNativeBridge.GetXREnvironment(); Application.targetFrameRate = 60; }
void Update() { if (!explicitlyPaused) { RunIfPaused(); } updateNumber++; if (EnableRemote()) { bridge.SetEditorAppInfo(editorBridge.EditorAppInfo()); bool firstConnect = false; if (!remoteConnected) { remoteConnected = bridge.IsRemoteConnected(); firstConnect = remoteConnected; } if (remoteConnected) { var remoteData = bridge.GetXRRemote(); if (firstConnect) { editorBridge.SetPlayerAspect(remoteData); xrEnvironment = XRNativeBridge.GetXREnvironment(); } editorBridge.SendDeviceInfo(remoteData); editorBridge.Update(); // Send camera aspect info to editor on every frame, in case the preview size changes. ConfigureXR(); } else { editorBridge.CheckADB(); } } var r = GetCurrentReality(); if (lastRealityMicros >= r.getEventId().getEventTimeMicros()) { return; } lastRealityMicros = r.getEventId().getEventTimeMicros(); }