Show / Hide Table of Contents

Class SceneManager

SceneManager extends MonoGame's Game class, adding tools for switching between scenes, each containing their own separate update and rendering logic.

Inheritance
System.Object
SceneManager
Namespace: Ladybug.SceneManagement
Assembly: ladybug.dll
Syntax
public class SceneManager : Game

Constructors

SceneManager()

Declaration
public SceneManager()

Fields

graphics

The SceneManager's resident GraphicsDeviceManager, used by managed scenes for rendering.

Declaration
public GraphicsDeviceManager graphics
Field Value
Type Description
GraphicsDeviceManager

SceneList

The list of Scenes being managed by this SceneManager

Declaration
protected List<Scene> SceneList
Field Value
Type Description
List<Scene>
Remarks

Use LoadScene() and UnloadScene() to add and remove Scenes from the list

Methods

Draw(GameTime)

Renders all Scenes managed by this SceneManager which are not Suspended.

Declaration
protected override void Draw(GameTime gameTime)
Parameters
Type Name Description
GameTime gameTime

Initialize()

Declaration
protected override void Initialize()

LoadContent()

Declaration
protected override void LoadContent()

LoadScene(Scene)

Loads a scene into the SceneManager, which will update the Scene every game loop.

Declaration
public virtual void LoadScene(Scene scene)
Parameters
Type Name Description
Scene scene

LoadSceneAsync(Scene)

Loads a Scene asynchronously, calling its LoadContentAsync and InitializeAsync before adding the scene to the SceneManager via LoadScene

Declaration
public virtual void LoadSceneAsync(Scene scene)
Parameters
Type Name Description
Scene scene
Remarks

Calls LoadScene, meaning the scene's LoadContent and LoadScene methods are called after their async counterparts.

PauseScene(Scene)

Declaration
public virtual void PauseScene(Scene scene)
Parameters
Type Name Description
Scene scene

SuspendScene(Scene)

Suspends a scene, causing both its Update() and Draw() to be skipped

Declaration
public virtual void SuspendScene(Scene scene)
Parameters
Type Name Description
Scene scene

UnloadScene(Scene)

Removes a scene from the SceneManager, unloading its assets and removing it from the scene execution loop.

Declaration
public virtual void UnloadScene(Scene scene)
Parameters
Type Name Description
Scene scene

UnpauseScene(Scene)

Unpauses a Scene, causing it to resume its Update()

Declaration
public virtual void UnpauseScene(Scene scene)
Parameters
Type Name Description
Scene scene

UnsuspendScene(Scene)

Unsuspends a scene, resuming both its Update() and Draw().

Declaration
public virtual void UnsuspendScene(Scene scene)
Parameters
Type Name Description
Scene scene

Update(GameTime)

Updates all Scenes managed by this SceneManager which are neither Paused nor Suspended.

Declaration
protected override void Update(GameTime gameTime)
Parameters
Type Name Description
GameTime gameTime
Back to top Generated by DocFX