Unity 之自动添加指定场景到BuildSettings中
1、打开Unity,新建一个空工程,具体如下图

2、然后在工程中,新建一个scene ,作为测试场景,具体如下图

3、此时打开build Settings,编译场景是空的,场景不会自动添加进去,具体如下图

4、新建一个脚本,实现编译场景为空的时候,自动添加指定的场景到编译场景中,具体代码和说明如下图

5、脚本具体代码如下:
using UnityEditor;
using UnityEngine;
using System.IO;
//在启动Unity的时候运行该编辑器脚本
[InitializeOnLoad]
public class AutoAddSomeScenesToBuild
{
// 注意一定要是静态方法
static AutoAddSomeScenesToBuild() {
// 获取存放指定场景Scene的文件夹信息
var scenesDir = new DirectoryInfo(Application.dataPath + "/Scenes");
// 如果 EditorBuildSettings.scenes 的个数为 0,且存放场景Scene 的文件夹存在,则进入分支
if (EditorBuildSettings.scenes.Length == 0 && scenesDir.Exists) {
// 把对应场景添加到 EditorBuildSettings 中,并设置是否激活该场景Scene
EditorBuildSettings.scenes = new UnityEditor.EditorBuildSettingsScene[] {
new EditorBuildSettingsScene("Assets/Scenes/Scane_1.unity", true),
new EditorBuildSettingsScene("Assets/Scenes/Scane_2.unity", false),
new EditorBuildSettingsScene("Assets/Scenes/Scane_3.unity", true),
};
}
}
}
6、脚本编译正确,回到Unity,play运行一下,此时,就会看到,编译场景中,自动添加上了指定的scene,具体如下图


7、有个妙用就是:打包工程为unity包,发给其他人,其他人新建工程,导入包,场景就会自动添加到编译场中,具体如下图


