我们要实现在编辑器环境下退出编辑器,在非编译器环境下退出游戏
提问
- 如何判断是否在编辑器环境中?
- 如何退出编辑模式?
- 如何退出程序?
回答
使用预处理判断当前的环境
常用的预处理标识符
标识符 |
解释 |
UNITY_EDITOR |
只在编辑器中编译 |
UNITY_ANDROID |
只在安卓下编译 |
UNITY_IPHONE |
只在苹果系统下编译 |
UNITY_STANDALONE_OSX |
专门为Mac OS(包括Universal,PPC和Intelarchitectures)平台的定义 |
UNITY_STANDALONE_WIN |
只在Windows系统下编译 |
设置EditorApplication的isPlaying属性为false即可退出编辑器模式
调用Application的Quit()方法即可退出程序
代码
public void ExitGame()
{
//预处理
#if UNITY_EDITOR //在编辑器模式下
EditorApplication.isPlaying = false;
#else
Application.Quit();
#endif
}