40 lines
1.3 KiB
C#
40 lines
1.3 KiB
C#
#if UNITY_EDITOR
|
|
using System.IO;
|
|
using Aisu.SIM1.Face.Core;
|
|
using Aisu.SIM1.Face.UI.Common;
|
|
using UnityEditor;
|
|
using UnityEditor.SceneManagement;
|
|
using UnityEngine;
|
|
|
|
namespace Aisu.SIM1.Face.Editor
|
|
{
|
|
/// <summary>
|
|
/// 生成 SI-M1 全功能 Demo 场景。
|
|
/// </summary>
|
|
public static class FaceModuleDemoSceneGenerator
|
|
{
|
|
private const string ScenePath = "Assets/SI-M1 Face Demo/Scenes/FaceModuleDemo.unity"; // Demo 场景保存路径。
|
|
|
|
/// <summary>
|
|
/// 创建并保存 Demo 场景。
|
|
/// </summary>
|
|
[MenuItem("AISU/SI-M1 Face SDK/Regenerate Imported Demo Scene")]
|
|
public static void Generate()
|
|
{
|
|
Directory.CreateDirectory(Path.GetDirectoryName(ScenePath));
|
|
var scene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Single);
|
|
var managerGo = new GameObject("FaceModuleManager");
|
|
managerGo.AddComponent<FaceModuleManager>();
|
|
|
|
var bootstrapGo = new GameObject("FaceModuleDemoBootstrap");
|
|
bootstrapGo.AddComponent<FaceModuleDemoBootstrap>();
|
|
|
|
EditorSceneManager.SaveScene(scene, ScenePath);
|
|
AssetDatabase.Refresh();
|
|
Selection.activeObject = bootstrapGo;
|
|
Debug.Log("FaceModule demo scene generated: " + ScenePath);
|
|
}
|
|
}
|
|
}
|
|
#endif
|