You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
-
# Advanced Scene Manager Documentation
1
+
# My Scene Manager Documentation
2
2
3
-
This repository contains the documentation for **Advanced Scene Manager**, a Unity package designed to streamline scene transitions, async operations, and addressable scene management.
3
+
This repository contains the documentation for **My Scene Manager**, a Unity package designed to streamline scene transitions, async operations, and addressable scene management.
4
4
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
Copy file name to clipboardExpand all lines: docs/advanced-usage/core-concepts.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,20 @@
1
1
---
2
2
sidebar_position: 1
3
-
description: An introduction to the advanced usage of the Advanced Scene Manager.
3
+
description: An introduction to the advanced usage of My Scene Manager.
4
4
---
5
5
6
6
# Core Concepts
7
7
8
-
There are some key structures that need to be understood in order to dive deep into the logic of the Advanced Scene Manager.
8
+
There are some key structures that need to be understood in order to dive deep into the logic of the My Scene Manager.
9
9
10
10
## Architecture
11
11
12
-
This is an overview of the Advanced Scene Manager architecture. We will dive into each individual component in the next pages.
12
+
This is an overview of the My Scene Manager architecture. We will dive into each individual component in the next pages.
13
13
Consider this flowchart:
14
14
15
15
```mermaid
16
16
flowchart TB
17
-
asm(Advanced Scene Manager)
17
+
asm(My Scene Manager)
18
18
sd(Core Scene Manager)
19
19
isd([ISceneManager])
20
20
so{{Load, Unload or Transition}}
@@ -42,7 +42,7 @@ flowchart TB
42
42
sr === so
43
43
```
44
44
45
-
- The `AdvancedSceneManager` is a static implementation of a `CoreSceneManager`, which contains all the logic to perform **Scene Operations**.
45
+
- The `MySceneManager` is a static implementation of a `CoreSceneManager`, which contains all the logic to perform **Scene Operations**.
46
46
- The `CoreSceneManager` is an implementation of the `ISceneManager` interface, that by itself only defines "low-level" **Scene Operations** methods that receive `SceneParameter` arguments.
47
47
- The `SceneParameter` struct is an abstraction to handle a single `ILoadSceneInfo` or multiple (`ILoadSceneInfo[]`).
48
48
- The `ILoadSceneInfo` interface is an abstraction of a reference to a scene. It has the following implementations:
Copy file name to clipboardExpand all lines: docs/advanced-usage/my-scene-manager.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,11 @@
2
2
sidebar_position: 2
3
3
---
4
4
5
-
# Advanced Scene Manager
5
+
# My Scene Manager
6
6
7
-
The `AdvancedSceneManager` is a static wrapper to the `CoreSceneManager` class, that exists to simplify the usage experience of the **Scene Operations**.
7
+
`MySceneManager` is a static wrapper to the `CoreSceneManager` class, that exists to simplify the usage experience of the **Scene Operations**.
8
8
It manages an internal reference to a Core Scene Manager that is created during the `RuntimeInitializeOnLoadMethod` callback, which is executed after the first scene has loaded and after the first `Awake()` cycle.
9
-
That means that the `AdvancedSceneManager` will not be initialized until the first `Start()` cycle.
9
+
That means that `MySceneManager` will not be initialized until the first `Start()` cycle.
You can optionally disable the `AdvancedSceneManager` static class entirely if you wish to manually handle the `CoreSceneManager` lifecycle and/or extend any functionality.
21
+
You can optionally disable the `MySceneManager` static class entirely if you wish to manually handle the `CoreSceneManager` lifecycle and/or extend any functionality.
22
22
To do it, simply define the scripting symbol `DISABLE_STATIC_SCENE_MANAGER` on your scripting compilation settings.
Copy file name to clipboardExpand all lines: docs/advanced-usage/scene-transitions.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -40,4 +40,4 @@ The `WaitForScriptedStart` and `WaitForScriptedEnd` fields in the `LoadingBehavi
40
40
Effectively, this **delays** the start or the end of the **Scene Transition** operation to display a visual feedback such as a fade in/out.
41
41
42
42
When the `TransitionAsync` method is _awaited_, it will wait until the entire transition has been completed **and** the loading scene has been unloaded.
43
-
If you wish to execute an action exactly when the target scene is loaded, you can either rely on that scene's `Awake()` calls or subscribe to the `SceneLoaded` event from the `CoreSceneManager` or `AdvancedSceneManager`.
43
+
If you wish to execute an action exactly when the target scene is loaded, you can either rely on that scene's `Awake()` calls or subscribe to the `SceneLoaded` event from the `CoreSceneManager` or `MySceneManager`.
description: Basic introduction to the usage of the Advanced Scene Manager.
3
+
description: Basic introduction to the usage of My Scene Manager.
4
4
---
5
5
6
6
# Basic Usage
7
7
8
8
Loading scenes with this package implies that the scenes **will always be loaded as Additive**. That is simply because there is no advantage in loading scenes in the **Single** load scene mode when you expect to work with multiple scenes.
9
9
10
-
You will be using the `AdvancedSceneManager` static class to perform the scene operations.
10
+
You will be using the `MySceneManager` static class to perform the scene operations.
11
11
12
12
## Loading scenes
13
13
14
14
You can load scenes by using any of these references:
Copy file name to clipboardExpand all lines: docs/intro.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ sidebar_position: 1
4
4
5
5
# Introduction
6
6
7
-
The **Advanced Scene Manager** is a powerful Unity package designed to simplify scene management, improve performance, and enhance flexibility in your projects. Whether you're dealing with scene transitions, [Unity Addressables](https://docs.unity3d.com/Manual/com.unity.addressables.html) scenes, or async/await workflows, this package provides an easy-to-use solution for handling all your scene management needs.
7
+
**My Scene Manager** is a powerful Unity package designed to simplify scene management, improve performance, and enhance flexibility in your projects. Whether you're dealing with scene transitions, [Unity Addressables](https://docs.unity3d.com/Manual/com.unity.addressables.html) scenes, or async/await workflows, this package provides an easy-to-use solution for handling all your scene management needs.
8
8
9
9
## Key Features
10
10
@@ -16,7 +16,7 @@ The **Advanced Scene Manager** is a powerful Unity package designed to simplify
16
16
17
17
## Instalation
18
18
19
-
To get started with the Advanced Scene Manager, you can install it in various ways:
19
+
To get started with My Scene Manager, you can install it in various ways:
Copy file name to clipboardExpand all lines: docs/samples/loading-scene-examples.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -12,11 +12,11 @@ This sample showcases different loading scenes and how to use **Scene Transition
12
12
Import the sample through the **Package Manager**.
13
13
14
14
1. Open `Window/Package Manager`.
15
-
2. Select `Advanced Scene Manager` from the `In Project` list.
15
+
2. Select `My Scene Manager` from the `In Project` list.
16
16
3. In the right panel, select the **Samples** tab.
17
17
4. Click on the `Import` button on the `Loading Scene Examples` item.
18
18
19
-
The sample assets will be installed to `Samples/Advanced Scene Manager/<version>/Loading Scene Examples`.
19
+
The sample assets will be installed to `Samples/My Scene Manager/<version>/Loading Scene Examples`.
20
20
21
21
## Scriptable Render Pipeline Compatibility
22
22
@@ -29,7 +29,7 @@ After importing the sample, a dialog will appear asking to automatically add the
29
29
This is required to be able to perform **Scene Transitions** with the sample scenes.
30
30
If you ignore this prompt, you'll need to manually add the scenes to the **Build Settings** if you want to play the sample.
31
31
32
-
You can easily remove the scenes added to the **Build Settings** via the menu item at `Tools/Advanced Scene Manager/Remove 'Loading Scene Examples' from Build Settings`.
32
+
You can easily remove the scenes added to the **Build Settings** via the menu item at `Tools/My Scene Manager/Remove 'Loading Scene Examples' from Build Settings`.
33
33
34
34
## Playing the Sample
35
35
@@ -69,12 +69,12 @@ public class SceneTransitionTrigger : MonoBehaviour
Copy file name to clipboardExpand all lines: docs/upgrades/from-3-to-4.md
+12-11
Original file line number
Diff line number
Diff line change
@@ -7,12 +7,13 @@ description: Upgrade from version 3.x to 4.x
7
7
# Upgrading from 3.x to 4.x
8
8
9
9
The `4.x` update consolidates the changes in the `3.x` and simplifies a few more steps of the usage experience.
10
-
It completely removes the `ISceneLoader` implementations and adds a static `AdvancedSceneManager` class so you don't have to manually control its lifecycle.
10
+
It completely removes the `ISceneLoader` implementations and adds a static `MySceneManager` class so you don't have to manually control its lifecycle.
11
11
12
12
## Key Changes
13
13
14
-
* Changed the `AdvancedSceneManager` to be a static class that auto manages its lifecycle. ([#49](https://github.com/mygamedevtools/scene-loader/issues/49))
15
-
* Converted the former `AdvancedSceneManager` to a new class `CoreSceneManager`, used internally by the new static `AdvancedSceneManager`. ([#49](https://github.com/mygamedevtools/scene-loader/issues/49))
14
+
* Renamed the package to `MySceneManager` from `AdvancedSceneManager` due to collisions with an existing Unity Asset Store product called Advanced Scene Manager.
15
+
* Added the static class `MySceneManager` that auto manages a scene manager lifecycle. ([#49](https://github.com/mygamedevtools/scene-loader/issues/49))
16
+
* Converted the former `AdvancedSceneManager` to a new class `CoreSceneManager`, used internally by the new static `MySceneManager`. ([#49](https://github.com/mygamedevtools/scene-loader/issues/49))
16
17
* Added extension methods to avoid having to create `ILoadSceneInfo` instances manually. ([#49](https://github.com/mygamedevtools/scene-loader/issues/49))
17
18
* Removed the `ISceneLoader` interface and all its implementations: `SceneLoaderAsync`, `SceneLoaderCoroutine` and `SceneLoaderUniTask`. ([#39](https://github.com/mygamedevtools/scene-loader/issues/39))
18
19
* Moved the `Transition` logic to the `ISceneManager` interface directly.
@@ -24,7 +25,7 @@ It completely removes the `ISceneLoader` implementations and adds a static `Adva
24
25
25
26
## Code Updates
26
27
27
-
With the static `AdvancedSceneManager` available, you no longer need to manage an `ISceneManager` lifecycle.
28
+
With the static `MySceneManager` available, you no longer need to manage an `ISceneManager` lifecycle.
28
29
Also, there's no longer need to manually create `ILoadSceneInfo` instances due to the addition of extension methods.
29
30
Consider this `3.x` code:
30
31
@@ -38,7 +39,7 @@ loader.TransitionToSceneAsync(new LoadSceneInfo("my-target-scene"), new LoadScen
@@ -111,9 +112,9 @@ You can retrieve the scenes by calling `SceneResult.GetScenes()`.
111
112
## Advanced Scene Manager Changes
112
113
113
114
The former `AdvancedSceneManager` was an implementation of the `ISceneManager` class.
114
-
This implementation has been renamed to `CoreSceneManager` and the `AdvancedSceneManager` name has been converted to a static class that internally manages an instance of a `CoreSceneManager`.
115
+
This implementation has been renamed to `CoreSceneManager` and the `MySceneManager` is a new static class that internally manages an instance of a `CoreSceneManager`.
115
116
116
-
Operationally, the static `AdvancedSceneManager` is a static wrapper to a `CoreSceneManager` instance.
117
+
Operationally, the static `MySceneManager` is a static wrapper to a `CoreSceneManager` instance.
117
118
118
119
The **Scene Transition** implementation from the former `SceneLoaderAsync` has been migrated to the `CoreSceneManager` class, along with a few improvements.
119
120
@@ -122,10 +123,10 @@ The **Scene Transition** implementation from the former `SceneLoaderAsync` has b
122
123
With extension methods, you no longer need to manually create `ILoadSceneInfo` instances:
0 commit comments