void OnARModeChanged(SetARModeAction.ARMode newData) { if (m_ARmode == newData) { return; } m_ARmode = newData; if (newData == SetARModeAction.ARMode.None) { return; } m_CurrentIARInstructionUI = null; foreach (var obj in InstructionUIList) { var instructionUI = obj as IARInstructionUI; if (instructionUI.arMode == newData) { m_CurrentIARInstructionUI = instructionUI; break; } } if (m_CurrentIARInstructionUI == null) { Debug.LogError("AR Instruction UI is null"); return; } m_CurrentIARInstructionUI.Restart(); }
public void SelectARMode(SetARModeAction.ARMode arMode) { if (arMode == SetARModeAction.ARMode.None) { return; } Dispatcher.Dispatch(SetWalkEnableAction.From(false)); var currentNavigationMode = m_NavigationModeSelector.GetValue() == SetNavigationModeAction.NavigationMode.Walk ? SetNavigationModeAction.NavigationMode.Orbit : m_NavigationModeSelector.GetValue(); if (currentNavigationMode != SetNavigationModeAction.NavigationMode.AR) { Dispatcher.Dispatch(UnloadSceneActions <Project> .From(UIStateManager.current.GetSceneDictionary()[currentNavigationMode])); Dispatcher.Dispatch(LoadSceneActions <Project> .From(UIStateManager.current.GetSceneDictionary()[SetNavigationModeAction.NavigationMode.AR])); } Dispatcher.Dispatch(OpenDialogAction.From(OpenDialogAction.DialogType.None)); Dispatcher.Dispatch(ClearStatusAction.From(true)); Dispatcher.Dispatch(ClearStatusAction.From(false)); Dispatcher.Dispatch(SetInstructionMode.From(false)); Dispatcher.Dispatch(CloseAllDialogsAction.From(null)); Dispatcher.Dispatch(SetNavigationModeAction.From(SetNavigationModeAction.NavigationMode.AR)); Dispatcher.Dispatch(SetARModeAction.From(arMode)); }
async Task RecycleAR(SetARModeAction.ARMode arMode) { m_NavigationModeUIController.StartOrbitMode(); await Task.Delay(100); m_CardSelectionUIController.SelectARMode(arMode); }
void OnARModeChange(SetARModeAction.ARMode mode) { if (mode == SetARModeAction.ARMode.MarkerBased && !m_MarkerModeActive) { // Turn on marker mode if (m_ARModePanel) { m_ARModePanel.SetActive(true); } if (m_DraggableMarkerPlacement) { m_DraggableMarkerPlacement.Close(); } m_MarkerModeActive = true; } else if (mode != SetARModeAction.ARMode.MarkerBased && m_MarkerModeActive) { // Turn off marker mode if (m_ARModePanel) { m_ARModePanel.SetActive(false); } m_MarkerModeActive = false; } }
public UIARStateData(bool arEnabled, SetInstructionUIStateAction.InstructionUIState instructionUIState, IARInstructionUI currentARInstructionUI, int numProxyInstances, int instructionUIStep, ARToolStateData arToolStateData, ARPlacementStateData placementStateData, SetARModeAction.ARMode arMode) { this.arEnabled = arEnabled; this.instructionUIState = instructionUIState; this.currentARInstructionUI = currentARInstructionUI; this.numProxyInstances = numProxyInstances; this.instructionUIStep = instructionUIStep; this.arToolStateData = arToolStateData; this.placementStateData = placementStateData; this.arMode = arMode; }
void ARCardClicked(SetARModeAction.ARMode arMode) { Dispatcher.Dispatch(SetARModeAction.From(arMode)); Dispatcher.Dispatch(SetDeltaDNAButtonAction.From($"ARMode_{arMode}")); SelectARMode(arMode); }