예제 #1
0
 private static void OnStateChange(PlayModeStateChange nextState)
 {
     Debug.Log(nextState.ToString());
     if (nextState == PlayModeStateChange.EnteredPlayMode ||
         nextState == PlayModeStateChange.ExitingEditMode)
     {
         Quit();
     }
 }
            private static void LogPlayModeState(PlayModeStateChange state)
            {
                current_state = state;

                if (CompileWindow.instance != null)
                {
                    if (!CompileWindow.instance.autoRunDisable)
                    {
                        ShowProgressEx("playModeStateChanged", "state:" + current_state.ToString());
                    }
                }

                //Debug.Log(state);
            }
예제 #3
0
        private static void LogPlayModeState(PlayModeStateChange state)
        {
            Debug.Log("INFO: Editor State Change: " + state.ToString());
            if (state == PlayModeStateChange.EnteredPlayMode)
            {
                // if we are entering play mode then launch ROS docker
                ZODockerRunParameters dockerRunParams = ZOROSUnityManager.Instance?.ROSLaunchParameters;

                if (dockerRunParams)
                {
                    if (dockerRunParams.runRemoteDocker == true)
                    {
                        // Use the Docker Remote API to launch a remote docker.
                        var t = Task.Run(async() => {
                            await ZODocker.DockerRunRemoteAsync(dockerRunParams);

                            // await ZODocker.DockerRunRemoteAsync("unix:///var/run/docker.sock",
                            //                     "docker.pkg.github.com/fsstudio-team/zerosimros/zerosim_ros",
                            //                     "/bin/bash -c \"source /catkin_ws/devel/setup.bash && roslaunch zero_sim_ros basic_unity_editor.launch\"", null, null, null, true, false);
                        });
                    }
                    else     // run local docker
                    {
                        ZODocker.DockerRun(dockerRunParams);
                    }
                }
            }
            else if (state == PlayModeStateChange.ExitingPlayMode)
            {
                // if we are exiting play mode stop docker
                ZODockerRunParameters dockerRunParams = ZOROSUnityManager.Instance?.ROSLaunchParameters;
                if (dockerRunParams)
                {
                    if (dockerRunParams.runRemoteDocker)
                    {
                        var t = Task.Run(async() => {
                            await ZODocker.DockerStopRemoteAsync(dockerRunParams.containerName, dockerRunParams.remoteDockerUri);
                        });
                    }
                    else
                    {
                        ZODocker.DockerStop(dockerRunParams.containerName);
                    }
                }

                // ZODockerManager.DockerComposeDown();
                // TODO: stop docker
            }
        }
예제 #4
0
 void OnApplicationPlayModeStateChanged(PlayModeStateChange change)
 {
     Debug.LogFormat("[OVRSystemPerfMetricsWindow] OnApplicationPlayModeStateChanged {0}", change.ToString());
     if (change == PlayModeStateChange.ExitingPlayMode)
     {
         tcpClient.Disconnect();
     }
 }
예제 #5
0
 static void OnPlayModeStateChanged(PlayModeStateChange mode)
 {
     GameDebug.Log("PlayMode is changed to: " + mode.ToString());
 }