Vertices Engine  v1.9.2.92
A Cross Platform game engine developed by Virtex Edge Design.
Loading...
Searching...
No Matches
VerticesEngine.vxBaseScene Class Referenceabstract

A scene is a single layer that has update and draw logic, and which can be combined with other layers to build up a complex game and menu system. For instance the main menu, the options menu, the "are you sure you want to quit" message box, and the main game itself are all implemented as scenes. More...

Inheritance diagram for VerticesEngine.vxBaseScene:
VerticesEngine.Screens.Async.BusyScreen VerticesEngine.Screens.Async.vxLoadingScreen VerticesEngine.Screens.Async.vxStartupMenuScreen VerticesEngine.UI.Dialogs.vxDialogBase VerticesEngine.UI.Menus.vxMenuBaseScreen VerticesEngine.UI.MessageBoxs.vxMessageBox VerticesEngine.UI.StartupScreen.vxInitializationScreen VerticesEngine.UI.StartupScreen.vxTitleScreen VerticesEngine.vxGameplaySceneBase

Public Member Functions

virtual void LoadContent ()
 Load graphics content for the screen.
 
virtual System.Collections.IEnumerator LoadContentAsync ()
 Loads content as part of a Coroutine allowing the game to update frames during the loading process.
 
virtual void UnloadContent ()
 Unload content for the screen.
 
virtual void Draw ()
 This is called when the screen is drawn.
 
virtual bool PlaySound (vxBaseScene sender, SoundEffect SoundEffect, float Volume=1, float Pitch=0)
 
void ExitScreen ()
 Tells the screen to go away. Unlike ScreenManager.RemoveScreen, which instantly kills the screen, this method respects the transition timings and will give the screen a chance to gradually transition off.
 
virtual void Dispose ()
 

Protected Member Functions

virtual void OnFirstUpdate ()
 Called at the start of this scenes first update/tick.
 
virtual void OnFirstDraw ()
 Called on the first draw of this scene.
 

Protected Attributes

bool IsLoadingTimeMeasured = false
 
bool HideIfCovered = true
 

Properties

bool IsPopup [get, protected set]
 Normally when one screen is brought up over the top of another, the first screen will transition off to make room for the new one. This property indicates whether the screen is only a small popup, in which case screens underneath it do not need to bother transitioning off.
 
bool IsRemoved [get, set]
 Has this scene been removed?
 
TimeSpan TransitionOnTime [get, protected set]
 Indicates how long the screen takes to transition on when it is activated.
 
TimeSpan TransitionOffTime [get, protected set]
 Indicates how long the screen takes to transition off when it is deactivated.
 
float TransitionPosition [get, protected set]
 Gets the current position of the screen transition, ranging from zero (fully active, no transition) to one (transitioned fully off to nothing).
 
float TransitionAlpha [get]
 Gets the current alpha of the screen transition, ranging from 1 (fully active, no transition) to 0 (transitioned fully off to nothing).
 
ScreenState ScreenState [get, protected set]
 Gets the current screen transition state.
 
bool IsExiting [get, set]
 There are two possible reasons why a screen might be transitioning off. It could be temporarily going away to make room for another screen that is on top of it, or it could be going away for good. This property indicates whether the screen is exiting for real: if set, the screen will automatically remove itself as soon as the transition finishes.
 
bool IsActive [get]
 Checks whether this screen is active and can respond to user input.
 
bool otherScreenHasFocus [get, set]
 
bool IsFirstLoop [get]
 Gets a value indicating whether this T:VerticesEngine.vxGameBaseScreen is first loop.
 
bool IsLoadingFile [get, set]
 Returns whether we're currently loading a file or not.
 
PlayerIndex? ControllingPlayer [get, set]
 Gets the index of the player who is currently controlling this screen, or null if it is accepting input from any player. This is used to lock the game to a specific player profile. The main menu responds to input from any connected gamepad, but whichever player makes a selection from this menu is given control over all subsequent screens, so other gamepads are inactive until the controlling player returns to the main menu.
 
bool IsContentLoaded [get, set]
 Has all the content been loaded yet?
 
bool coveredByOtherScreen [get, set]
 

Detailed Description

A scene is a single layer that has update and draw logic, and which can be combined with other layers to build up a complex game and menu system. For instance the main menu, the options menu, the "are you sure you want to quit" message box, and the main game itself are all implemented as scenes.

Member Function Documentation

◆ Draw()

◆ LoadContent()

virtual void VerticesEngine.vxBaseScene.LoadContent ( )
virtual

Load graphics content for the screen.

Reimplemented in VerticesEngine.UI.vxManageImportedEntitiesDialog, VerticesEngine.vxGameplayScene3D, VerticesEngine.vxGameplaySceneBase, VerticesEngine.Localization.UI.vxLocalizationSelectMsgBox, VerticesEngine.UI.Dialogs.vxLocalizationDialog, VerticesEngine.Net.UI.vxServerListDialog, VerticesEngine.Net.UI.vxSeverLANListDialog, VerticesEngine.Net.UI.vxSeverOnlineListDialog, VerticesEngine.Net.UI.vxServerLobbyDialog, VerticesEngine.Net.UI.vxSeverLobbyDialog, VerticesEngine.UI.Dialogs.vxFileExplorerDialog, VerticesEngine.UI.Dialogs.vxModManagerDialog, VerticesEngine.UI.Dialogs.vxDialogBase, VerticesEngine.UI.Dialogs.vxFileDialog< T >, VerticesEngine.UI.Dialogs.vxAudioMenuScreen, VerticesEngine.UI.Menus.vxControlsMenuScreen, VerticesEngine.UI.Dialogs.vxDebugMenuScreen, VerticesEngine.UI.Dialogs.vxGraphicSettingsDialog, VerticesEngine.UI.Dialogs.vxKeyboardSettingsDialog, VerticesEngine.UI.Menus.vxLocalizationMenuScreen, VerticesEngine.UI.Menus.vxMenuBaseScreen, VerticesEngine.UI.Menus.vxPauseMenuScreen, VerticesEngine.UI.Menus.vxProfileMenuScreen, VerticesEngine.UI.Menus.vxPurchaseMenuScreen, VerticesEngine.UI.Dialogs.vxSettingsBaseDialog, VerticesEngine.UI.Menus.vxSettingsMenuScreen, VerticesEngine.UI.MessageBoxs.vxMessageBox, VerticesEngine.UI.MessageBoxs.vxMessageBoxNetworkLoggingIn, VerticesEngine.UI.MessageBoxs.vxMessageBoxNetworkLogIn, VerticesEngine.UI.MessageBoxs.vxMessageBoxSaveBeforeQuit, VerticesEngine.UI.MessageBoxs.vxMessageInputBox, VerticesEngine.UI.StartupScreen.vxInitializationScreen, VerticesEngine.UI.StartupScreen.vxTitleScreen, VerticesEngine.UI.Dialogs.Utilities.vxTexPackGenDialog, VerticesEngine.Screens.vxModelViewer, VerticesEngine.Workshop.UI.vxWorkshopSearchBusyScreen, VerticesEngine.Workshop.UI.vxWorkshopSearchResultDialog2, VerticesEngine.Workshop.vxWorkshopUploadDialog, and VerticesEngine.Workshop.vxWorkshopUploadWorker.

◆ LoadContentAsync()

virtual System.Collections.IEnumerator VerticesEngine.vxBaseScene.LoadContentAsync ( )
virtual

Loads content as part of a Coroutine allowing the game to update frames during the loading process.

Returns

Reimplemented in VerticesEngine.vxGameplayScene3D.

◆ OnFirstDraw()

virtual void VerticesEngine.vxBaseScene.OnFirstDraw ( )
protectedvirtual

◆ OnFirstUpdate()

virtual void VerticesEngine.vxBaseScene.OnFirstUpdate ( )
protectedvirtual

Called at the start of this scenes first update/tick.

Reimplemented in VerticesEngine.UI.Menus.vxMenuBaseScreen, and VerticesEngine.Screens.vxModelViewer.

◆ UnloadContent()

Property Documentation

◆ IsFirstLoop

bool VerticesEngine.vxBaseScene.IsFirstLoop
get

Gets a value indicating whether this T:VerticesEngine.vxGameBaseScreen is first loop.

true if is first loop; otherwise, false.


The documentation for this class was generated from the following file: