docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class TutorialWindow

    The window used to display tutorials and their content

    Inheritance
    object
    Object
    ScriptableObject
    EditorWindow
    EditorWindowProxy
    TutorialWindow
    Inherited Members
    EditorWindow.BeginWindows()
    EditorWindow.EndWindows()
    EditorWindow.ShowNotification(GUIContent)
    EditorWindow.ShowNotification(GUIContent, double)
    EditorWindow.RemoveNotification()
    EditorWindow.ShowTab()
    EditorWindow.Focus()
    EditorWindow.ShowUtility()
    EditorWindow.ShowPopup()
    EditorWindow.ShowModalUtility()
    EditorWindow.ShowAsDropDown(Rect, Vector2)
    EditorWindow.Show()
    EditorWindow.Show(bool)
    EditorWindow.ShowAuxWindow()
    EditorWindow.ShowModal()
    EditorWindow.GetWindow(Type, bool, string, bool)
    EditorWindow.GetWindow(Type, bool, string)
    EditorWindow.GetWindow(Type, bool)
    EditorWindow.GetWindow(Type)
    EditorWindow.GetWindowWithRect(Type, Rect, bool, string)
    EditorWindow.GetWindowWithRect(Type, Rect, bool)
    EditorWindow.GetWindowWithRect(Type, Rect)
    EditorWindow.GetWindow<T>()
    EditorWindow.GetWindow<T>(bool)
    EditorWindow.GetWindow<T>(bool, string)
    EditorWindow.GetWindow<T>(string)
    EditorWindow.GetWindow<T>(string, bool)
    EditorWindow.GetWindow<T>(bool, string, bool)
    EditorWindow.GetWindow<T>(params Type[])
    EditorWindow.GetWindow<T>(string, params Type[])
    EditorWindow.GetWindow<T>(string, bool, params Type[])
    EditorWindow.CreateWindow<T>(params Type[])
    EditorWindow.CreateWindow<T>(string, params Type[])
    EditorWindow.HasOpenInstances<T>()
    EditorWindow.FocusWindowIfItsOpen(Type)
    EditorWindow.FocusWindowIfItsOpen<T>()
    EditorWindow.GetWindowWithRect<T>(Rect)
    EditorWindow.GetWindowWithRect<T>(Rect, bool)
    EditorWindow.GetWindowWithRect<T>(Rect, bool, string)
    EditorWindow.GetWindowWithRect<T>(Rect, bool, string, bool)
    EditorWindow.SaveChanges()
    EditorWindow.DiscardChanges()
    EditorWindow.Close()
    EditorWindow.Repaint()
    EditorWindow.SendEvent(Event)
    EditorWindow.GetExtraPaneTypes()
    EditorWindow.TryGetOverlay(string, out Overlay)
    EditorWindow.rootVisualElement
    EditorWindow.wantsMouseMove
    EditorWindow.wantsMouseEnterLeaveWindow
    EditorWindow.wantsLessLayoutEvents
    EditorWindow.autoRepaintOnSceneChange
    EditorWindow.maximized
    EditorWindow.hasFocus
    EditorWindow.docked
    EditorWindow.focusedWindow
    EditorWindow.mouseOverWindow
    EditorWindow.hasUnsavedChanges
    EditorWindow.saveChangesMessage
    EditorWindow.minSize
    EditorWindow.maxSize
    EditorWindow.title
    EditorWindow.titleContent
    EditorWindow.depthBufferBits
    EditorWindow.antiAlias
    EditorWindow.position
    ScriptableObject.SetDirty()
    ScriptableObject.CreateInstance(string)
    ScriptableObject.CreateInstance(Type)
    ScriptableObject.CreateInstance<T>()
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Unity.Tutorials.Core.Editor
    Assembly: Unity.Tutorials.Core.Editor.dll
    Syntax
    public sealed class TutorialWindow : EditorWindowProxy

    Fields

    ShowTutorialsClosedDialog

    Should we show the Close Tutorials info dialog for the user for the current project. By default the dialog is shown once per project and disabled after that.

    Declaration
    [Obsolete("Has no effect in v3, and will be removed in v4.")]
    public static ProjectSetting<bool> ShowTutorialsClosedDialog
    Field Value
    Type Description
    ProjectSetting<bool>
    Remarks

    You want to set this typically to false when running unit tests.

    Properties

    ActiveContainer

    Active container of which tutorials we are viewing.

    Declaration
    [Obsolete("Will be removed in v4. Use CurrentCategory instead")]
    public TutorialContainer ActiveContainer { get; set; }
    Property Value
    Type Description
    TutorialContainer

    CurrentCategory

    The category of which tutorial are being displayed. Null if the project and its packages contains no categories, meaning all tutorials are being displayed.

    Declaration
    public TutorialContainer CurrentCategory { get; }
    Property Value
    Type Description
    TutorialContainer

    CurrentTutorial

    The currently active tutorial, if any.

    Declaration
    public Tutorial CurrentTutorial { get; }
    Property Value
    Type Description
    Tutorial

    Instance

    The active instance of this window

    Declaration
    public static TutorialWindow Instance { get; set; }
    Property Value
    Type Description
    TutorialWindow

    IsTransitioningBetweenTutorials

    Are we currently (during this frame) transitioning from one tutorial to another?

    Declaration
    public bool IsTransitioningBetweenTutorials { get; }
    Property Value
    Type Description
    bool
    Remarks

    This transition typically happens when using a Switch Tutorial button on a tutorial page.

    Methods

    ClearContainers()

    Clears any containers this window might be showing as available tutorial projects.

    Declaration
    [Obsolete("Will be removed in v4.  Categories loading/unloading is now managed automatically by the TutorialWindow")]
    public void ClearContainers()
    Remarks

    If we were viewing the container selection, the window is cleared.

    ClearLocalizationCache()

    Clear localization table cache

    Declaration
    public static void ClearLocalizationCache()

    ExitTutorial()

    Exits the current tutorial

    Declaration
    public static void ExitTutorial()

    OnResized_Internal()

    Re-find our instance if we've lost it This occurs when a window is maximized

    Declaration
    protected override void OnResized_Internal()
    Overrides
    EditorWindowProxy.OnResized_Internal()

    SetContainers(IEnumerable<TutorialContainer>)

    Sets the containers as available for selection as tutorial projects.

    Declaration
    [Obsolete("Will be removed in v4. Categories loading/unloading is now managed automatically by the TutorialWindow")]
    public void SetContainers(IEnumerable<TutorialContainer> containers)
    Parameters
    Type Name Description
    IEnumerable<TutorialContainer> containers

    Container selection.

    Remarks

    ActiveContainer must be set to null in order to view the selection.

    ShowWindow()

    Shows Tutorials window using the currently specified behaviour.

    Declaration
    public static TutorialWindow ShowWindow()
    Returns
    Type Description
    TutorialWindow

    The the created, or already existing, window instance.

    Remarks

    Different behaviors:

    1. If a single root tutorial container (TutorialContainer.ParentContainer is null) that has Project Layout specified exists, the window is loaded and shown using the specified project window layout (old behaviour). If the project layout does not contain Tutorials window, the window is shown an as a free-floating window.
    2. If no root tutorial containers exist, or a root container's Project Layout is not specified, the window is shown by anchoring and docking it next to the Inspector (new behaviour). If the Inspector is not available, the window is shown an as a free-floating window.
    3. If there is more than one root tutorial container with different Project Layout setting in the project, one asset is chosen randomly to specify the behavior.
    4. If Tutorials window is already created, it is simply brought to the foreground and focused.

    ShowWindow(bool)

    Main logic for ShowWindow()

    Declaration
    public static TutorialWindow ShowWindow(bool shouldRefreshLayout)
    Parameters
    Type Name Description
    bool shouldRefreshLayout

    Whether or not we should reset the layout to the basic tutorial layout. Should be false when loading a tutorial step and true when first initializing the tutorial window.

    Returns
    Type Description
    TutorialWindow

    The created, or already existing, window instance.

    StartTutorial(Tutorial)

    Starts a tutorial as if it was clicked in the Table of content.

    Declaration
    public static void StartTutorial(Tutorial tutorial)
    Parameters
    Type Name Description
    Tutorial tutorial

    The tutorial to start

    Extension Methods

    EditorWindowUtils.DockWindow(EditorWindow, EditorWindow, EditorWindowUtils.DockPosition)
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)