Unity 6.3
0 онлайн 67 гостей 3 в системе
Вход

ISceneTemplatePipeline

интерфейс в UnityEditor.SceneTemplate

Описание

Унаследуйтесь от этого интерфейса, чтобы упаковать собственную последовательность кода, выполняемую при создании экземпляра шаблона сцены. ISceneTemplatePipeline создаётся один раз при создании экземпляра шаблона и получает несколько уведомлений в ходе этой последовательности.

using UnityEngine.SceneManagement;
using UnityEditor.SceneTemplate;

public class MySceneTemplatePipeline : ISceneTemplatePipeline { public virtual bool IsValidTemplateForInstantiation(SceneTemplateAsset sceneTemplateAsset) { // Check if the scene template is valid for this project. return true; }

public virtual void BeforeTemplateInstantiation(SceneTemplateAsset sceneTemplateAsset, bool isAdditive, string sceneName) { // Do some work before instantiating the new scene based on the template. UnityEngine.Debug.Log($"BeforeTemplateInstantiation {sceneTemplateAsset.name} isAdditive: {isAdditive} sceneName: {sceneName}"); }

public virtual void AfterTemplateInstantiation(SceneTemplateAsset sceneTemplateAsset, Scene scene, bool isAdditive, string sceneName) { // Do some work after instantiating the new scene. UnityEngine.Debug.Log($"AfterTemplateInstantiation {sceneTemplateAsset.name} scene: {scene} isAdditive: {isAdditive} sceneName: {sceneName}"); } }

Открытые методы

Метод Описание
AfterTemplateInstantiationСобытие, вызванное после того, как шаблон Scene был инстанцирован, и пока новая сцена все еще загружается.
BeforeTemplateInstantiationСобытие, вызванное перед созданием экземпляра шаблона Scene.
IsValidTemplateForInstantiationСобытие, вызванное перед диалогом Создать Scene, отображается для определения того, доступен ли этот шаблон в диалоге.