docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class Tutorial

    A container for tutorial pages which implement the tutorial's functionality.

    Inheritance
    object
    Object
    ScriptableObject
    Tutorial
    Implements
    ISerializationCallbackReceiver
    Inherited Members
    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.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: Unity.Tutorials.Core.Editor
    Assembly: Unity.Tutorials.Core.Editor.dll
    Syntax
    public class Tutorial : ScriptableObject, ISerializationCallbackReceiver

    Fields

    Completed

    Raised after this tutorial has been completed.

    Declaration
    public TutorialEvent Completed
    Field Value
    Type Description
    TutorialEvent
    Remarks

    This even is raised repeatedly when, for example, going back and forth between the second-to-last and last page, and the last page has its possible criteria completed.

    CompletionDialog

    A dialog displayed when the tutorial is completed, if the user is not switching to a different tutorial

    Declaration
    [SerializeField]
    [Tooltip("A dialog displayed when the tutorial is completed, if the user is not switching to a different tutorial")]
    public TutorialWelcomePage CompletionDialog
    Field Value
    Type Description
    TutorialWelcomePage

    GoingBack

    Raised when we are going back to the previous page.

    Declaration
    public GoingBackEvent GoingBack
    Field Value
    Type Description
    GoingBackEvent

    Initiated

    Raised after this tutorial has been initiated.

    Declaration
    public TutorialEvent Initiated
    Field Value
    Type Description
    TutorialEvent

    Modified

    Raised when this tutorial is modified.

    Declaration
    [Header("Events")]
    public TutorialEvent Modified
    Field Value
    Type Description
    TutorialEvent

    PageInitiated

    Raised after a page of this tutorial has been initiated.

    Declaration
    public PageInitiatedEvent PageInitiated
    Field Value
    Type Description
    PageInitiatedEvent

    Quit

    Raised when this tutorial is quit at any point. Quit is signaled always, whether the tutorial is quit by closing the tutorial,
    completing the tutorial or by proceeding to the next tutorial.

    Declaration
    public TutorialEvent Quit
    Field Value
    Type Description
    TutorialEvent

    TutorialModified

    Raised when any tutorial is modified.

    Declaration
    public static TutorialEvent TutorialModified
    Field Value
    Type Description
    TutorialEvent

    TutorialTitle

    The title shown in the window.

    Declaration
    [Header("Content")]
    public LocalizableString TutorialTitle
    Field Value
    Type Description
    LocalizableString

    Properties

    CurrentPage

    Returns the current page.

    Declaration
    public TutorialPage CurrentPage { get; }
    Property Value
    Type Description
    TutorialPage

    CurrentPageIndex

    The current page index.

    Declaration
    public int CurrentPageIndex { get; }
    Property Value
    Type Description
    int

    DefaultSceneCameraSettings

    Scene view camera settings to be applied when the tutorial starts.

    Declaration
    public SceneViewCameraSettings DefaultSceneCameraSettings { get; set; }
    Property Value
    Type Description
    SceneViewCameraSettings

    IsAutoCompleting

    Are we currently auto-completing?

    Declaration
    public bool IsAutoCompleting { get; }
    Property Value
    Type Description
    bool

    IsCompleted

    Is the tutorial completed? A tutorial is considered to be completed when we have reached its last page and possible criteria on the last page are completed.

    Declaration
    public bool IsCompleted { get; }
    Property Value
    Type Description
    bool

    LessonId

    Lesson ID used for progress tracking. Typically there's no need to alter this value manually, instead use the ProgressTrackingEnabled property (a GUID will be generated automatically).

    Declaration
    public string LessonId { get; set; }
    Property Value
    Type Description
    string

    PageCount

    The page count of the tutorial.

    Declaration
    public int PageCount { get; }
    Property Value
    Type Description
    int

    Pages

    All the pages of this tutorial.

    Declaration
    [Obsolete("will be removed in v4. Use PagesCollection instead")]
    public IEnumerable<TutorialPage> Pages { get; }
    Property Value
    Type Description
    IEnumerable<TutorialPage>

    PagesCollection

    All the pages of this tutorial.

    Declaration
    public Tutorial.TutorialPageCollection PagesCollection { get; set; }
    Property Value
    Type Description
    Tutorial.TutorialPageCollection

    ProgressTrackingEnabled

    Enables progress tracking and completion checkmarks for this tutorial.

    Declaration
    public bool ProgressTrackingEnabled { get; set; }
    Property Value
    Type Description
    bool

    ReturnToPreviousScenes

    Will the tutorial revert to the open scenes before it was started or leave the scene as is (default is true)

    Declaration
    public bool ReturnToPreviousScenes { get; set; }
    Property Value
    Type Description
    bool

    SceneManagementBehavior

    Scene management behavior at the start of a tutorial.

    Declaration
    public Tutorial.SceneManagementBehaviorType SceneManagementBehavior { get; set; }
    Property Value
    Type Description
    Tutorial.SceneManagementBehaviorType
    Remarks

    Applicable when no Scenes are specified.

    Scenes

    Scenes to be loaded when the tutorial starts, if any.

    Declaration
    public SceneAsset[] Scenes { get; set; }
    Property Value
    Type Description
    SceneAsset[]
    Remarks

    The first scene is the main scene, the rest are loaded as additive scenes.

    Skipped

    Is this tutorial being skipped currently.

    Declaration
    public bool Skipped { get; }
    Property Value
    Type Description
    bool

    Version

    Tutorial version, arbitrary string, typically integers are used.

    Declaration
    public string Version { get; set; }
    Property Value
    Type Description
    string

    WindowLayout

    The layout used by the tutorial

    Declaration
    public Object WindowLayout { get; set; }
    Property Value
    Type Description
    Object

    Methods

    AddPage(TutorialPage)

    Adds a page to the tutorial

    Declaration
    public void AddPage(TutorialPage tutorialPage)
    Parameters
    Type Name Description
    TutorialPage tutorialPage

    The page to be added

    CurrentPageIsFirst()

    Is the current page of the tutorial the first one?

    Declaration
    public bool CurrentPageIsFirst()
    Returns
    Type Description
    bool

    True if yes, false otherwise

    CurrentPageIsLast()

    Is the current page of the tutorial the last one?

    Declaration
    public bool CurrentPageIsLast()
    Returns
    Type Description
    bool

    True if yes, false otherwise

    GetFaqQuestions(Section, out List<FaqEntry>)

    Fill the provided List with the questions for the given section

    Declaration
    public void GetFaqQuestions(HelpPanelHandler.Section section, out List<FaqEntry> questions)
    Parameters
    Type Name Description
    HelpPanelHandler.Section section

    The section for which get the FAQ question

    List<FaqEntry> questions

    The list that will be filled with the question

    GoToPreviousPage()

    Goes to the previous tutorial page.

    Declaration
    public void GoToPreviousPage()

    OnAfterDeserialize()

    UnityEngine.ISerializationCallbackReceiver override, do not call.

    Declaration
    public void OnAfterDeserialize()

    OnBeforeSerialize()

    UnityEngine.ISerializationCallbackReceiver override, do not call.

    Declaration
    public void OnBeforeSerialize()

    RaiseModified()

    Raises the Modified events for this asset.

    Declaration
    public void RaiseModified()

    SkipToLastPage()

    Skips to the last page of the tutorial.

    Declaration
    public void SkipToLastPage()

    StartAutoCompletion()

    Starts auto-completion of this tutorial.

    Declaration
    public void StartAutoCompletion()

    StopAutoCompletion()

    Stops auto-completion of this tutorial.

    Declaration
    public void StopAutoCompletion()

    StopTutorial()

    Stops this tutorial, meaning its completion requirements are removed.

    Declaration
    public void StopTutorial()

    TryGoToNextPage()

    Attempts to go to the next tutorial page.

    Declaration
    public bool TryGoToNextPage()
    Returns
    Type Description
    bool

    true if we proceeded to the next page, false in any other case.

    Implements

    ISerializationCallbackReceiver
    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)