Worst-case scenario: the UEd Goblin wipes the map and burns down your house.
UE3:UIScene (UT3)
Object >> UIRoot >> UIScreenObject >> UIScene |
Contents
- 1 Properties
- 1.1 Property group 'Flags'
- 1.1.1 bAlwaysRenderScene
- 1.1.2 bCloseOnLevelChange
- 1.1.3 bDisableWorldRendering
- 1.1.4 bDisplayCursor
- 1.1.5 bEnableSceneDepthTesting
- 1.1.6 bEnableScenePostProcessing
- 1.1.7 bExemptFromAutoClose
- 1.1.8 bFlushPlayerInput
- 1.1.9 bMenuLevelRestoresScene
- 1.1.10 bPauseGameWhileActive
- 1.1.11 bRenderParentScenes
- 1.1.12 bRequiresNetwork
- 1.1.13 bRequiresOnlineService
- 1.1.14 bSaveSceneValuesOnClose
- 1.2 Property group 'Overlays'
- 1.3 Property group 'Sound'
- 1.4 Property group 'Splitscreen'
- 1.5 Property group 'UIScene'
- 1.6 Internal variables
- 1.6.1 ActiveContextMenu
- 1.6.2 ActiveToolTip
- 1.6.3 bIssuedPreRenderCallback
- 1.6.4 bMouseBoundsSet
- 1.6.5 bRefreshStringFormatting
- 1.6.6 bRefreshWidgetStyles
- 1.6.7 bResolvingScenePositions
- 1.6.8 bUpdateDockingStack
- 1.6.9 bUpdateNavigationLinks
- 1.6.10 bUpdatePrimitiveUsage
- 1.6.11 bUpdateScenePositions
- 1.6.12 bUsesPrimitives
- 1.6.13 CurrentViewportSize
- 1.6.14 DockingStack
- 1.6.15 InputSubscriptions
- 1.6.16 LastPlayerIndex
- 1.6.17 PlayerOwner
- 1.6.18 RenderStack
- 1.6.19 SceneClient
- 1.6.20 SceneData
- 1.6.21 SceneLayerRoot
- 1.6.22 ScenePreview
- 1.6.23 StandardContextMenu
- 1.6.24 StandardToolTip
- 1.7 Default values
- 1.8 Subobjects
- 1.1 Property group 'Flags'
- 2 Delegates
- 3 Functions
- 3.1 Native functions
- 3.1.1 ForceImmediateSceneUpdate
- 3.1.2 GetActiveContextMenu
- 3.1.3 GetActiveToolTip
- 3.1.4 GetDefaultContextMenu
- 3.1.5 GetDefaultToolTip
- 3.1.6 GetPreviousScene
- 3.1.7 GetSceneDataStore
- 3.1.8 GetWorldInfo
- 3.1.9 IsSceneActive
- 3.1.10 LoadSceneDataValues
- 3.1.11 RebuildDockingStack
- 3.1.12 ResetMouseBounds
- 3.1.13 ResolveDataStore
- 3.1.14 ResolveScenePositions
- 3.1.15 SaveSceneDataValues
- 3.1.16 SetActiveContextMenu
- 3.1.17 SetActiveToolTip
- 3.1.18 SetMouseBounds
- 3.1.19 SetSceneInputMode
- 3.1.20 UnbindSubscribers
- 3.2 Events
- 3.3 Other instance functions
- 3.1 Native functions
- Package:
- Engine
- Direct subclasses:
- UIPrefabScene, UIScriptConsoleScene, UTUIScene
- This class in other games:
- UDK
This is an auto-generated page and may need human attention. Please remove the {{autogenerated}} tag if the page seems reasonably complete or replace it with the {{expand}} tag if the page is not yet complete. |
Outermost container for a group of widgets. The relationship between UIScenes and widgets is very similar to the relationship between maps and the actors placed in a map, in that all UIObjects must be contained by a UIScene. Widgets cannot be rendered directly.
Copyright 1998-2008 Epic Games, Inc. All Rights Reserved.
Properties[edit]
Property group 'Flags'[edit]
bAlwaysRenderScene[edit]
Type: bool
Overrides the setting of bRenderParentScenes for any scenes higher in the stack
bCloseOnLevelChange[edit]
Type: bool
Indicates whether the the scene should close itself when the level changes. This is useful for when you have a main menu and want to make certain it is closed when ever you switch to a new level.
Default value: True
bDisableWorldRendering[edit]
Type: bool
Displayed as: Disable World Rendering
TRUE to disable world rendering while this scene is active
bDisplayCursor[edit]
Type: bool
Controls whether the cursor is shown while this scene is active. Interactive scenes such as menus will generally want this enabled, while non-interactive scenes, such as the HUD generally want it disabled.
Todo: this bool may be unnecessary, since we can establish whether a scene should process mouse input by looking at the input events for the widgets of this scene; if any process any of the mouse keys (MouseX, MouseY, RMB, LMB, MMB, etc.) or if the scene can be a drop target, then this scene needs to process mouse input, and should probably display a cursor.... hmmm need to think about this assumption a bit more before implementing this
Default value: True
bEnableSceneDepthTesting[edit]
Type: bool
Controls whether depth testing is enabled for this scene. If TRUE then the 2d ui items are depth tested against the 3d ui scene
bEnableScenePostProcessing[edit]
Type: bool
Controls whether post-processing is enabled for this scene.
bExemptFromAutoClose[edit]
Type: bool
If true this scene is exempted from Auto closuer when a scene above it closes
bFlushPlayerInput[edit]
Type: bool
Displayed as: Flush Input
TRUE to flush all player input when this scene is opened.
Default value: True
bMenuLevelRestoresScene[edit]
Type: bool
TRUE indicates that this scene can be automatically reopened when the user returns to the main front-end menu.
bPauseGameWhileActive[edit]
Type: bool
Indicates whether the game should be paused while this scene is active.
Default value: True
bRenderParentScenes[edit]
Type: bool
Controls whether the scenes underneath this scene are rendered.
bRequiresNetwork[edit]
Type: bool
TRUE to indicate that this scene requires a valid network connection in order to be opened. If no network connection is available, the scene will be closed.
bRequiresOnlineService[edit]
Type: bool
Set to TRUE to indicate that the user must be signed into an online service (for example, Windows live) in order to view this scene. If the user is not signed into an online service, the scene will be closed.
bSaveSceneValuesOnClose[edit]
Type: bool
Indicates whether the scene should have its widgets save their values to the datastore on close.
Default value: True
Property group 'Overlays'[edit]
DefaultContextMenuClass[edit]
Type: class<UIContextMenu>
Modifiers: const
The UIContextMenu class to use for the StandardContextMenu
Default value: Class'Engine.UIContextMenu'
DefaultToolTipClass[edit]
Modifiers: const
The UIToolTip class to use for the StandardToolTip
Default value: Class'Engine.UIToolTip'
Property group 'Sound'[edit]
SceneClosedCue[edit]
Type: name
this sound is played when this scene is deactivated
Default value: 'SceneClosed'
SceneOpenedCue[edit]
Type: name
this sound is played when this scene is activated
Default value: 'SceneOpened'
Property group 'Splitscreen'[edit]
SceneInputMode[edit]
Type: UIRoot.EScreenInputMode
Controls how this scene responds to input from multiple players.
Default value: INPUTMODE_Locked
SceneRenderMode[edit]
Type: UIRoot.ESplitscreenRenderMode
Controls how this scene will be rendered when split-screen is active.
Default value: SPLITRENDER_PlayerOwner
Property group 'UIScene'[edit]
MouseBounds[edit]
Type: UIRoot.UIMouseBounds
The boundaries with which to restrict mouse movement in this scene
Default value:
Member | Value |
---|---|
bFullscreenOnly | True |
Value[2] | 1.0 |
Value[3] | 1.0 |
SceneTag[edit]
Type: name
Semi-unique non-localized name for this scene which is used to reference the scene from unrealscript. For scenes which are gametype specific, each scene may wish to use the same SceneName (for example, if each game had a single scene which represented the HUD for that gametype, all of the HUD scenes might use "HUDScene" as their SceneName, so that the current game's HUD scene can be referenced using "HUDScene" regardless of which type of hud it is)
Internal variables[edit]
ActiveContextMenu[edit]
Type: UIContextMenu
Modifiers: const, transient, private
The context menu currently being displayed or pending display.
ActiveToolTip[edit]
Type: UIToolTip
Modifiers: const, transient, private
The tool tip currently being displayed or pending display.
bIssuedPreRenderCallback[edit]
Type: bool
Modifiers: transient
This flag is used to detect whether or not we are updating the scene for the first time, if it is FALSE and update scene is called, then we issue the PreRenderCallback for the scene so widgets have a chance to 'initialize' their positions if desired.
bMouseBoundsSet[edit]
Type: bool
Modifiers: const
Used to determine whether or not the mouse boundaries have been set
bRefreshStringFormatting[edit]
Type: bool
Modifiers: transient
Indicates that all strings contained in this scene should be reformatted.
bRefreshWidgetStyles[edit]
Type: bool
Modifiers: transient
Indicates that the Widgets displayed need to be redrawn. Once this is set to true, RefreshWidgets() will be called on the next Tick()
bResolvingScenePositions[edit]
Type: bool
Modifiers: transient, const
Indicates that the scene is currently resolving positions for widgets in this scene
bUpdateDockingStack[edit]
Type: bool
Modifiers: transient
Indicates that the docking stack should be rebuilt on the next Tick()
[edit]
Type: bool
Modifiers: transient
Indicates that the navigation links between the widgets owned by this scene are no longer up to date. Once this is set to true, RebuildNavigationLinks() will be called on the next Tick()
bUpdatePrimitiveUsage[edit]
Type: bool
Modifiers: transient
Indicates that the value of bUsesPrimitives is potentially out of date. Normally set when a child is added or removed from the scene. When TRUE, UpdatePrimitiveUsage will be called during the next tick.
bUpdateScenePositions[edit]
Type: bool
Modifiers: transient
Indicates that the widgets owned by this scene should re-evaluate their screen positions into absolute pixels on the next Tick().
bUsesPrimitives[edit]
Type: bool
Modifiers: transient, const
Indicates that one or more widgets in this scene are using 3D primitives. Set to TRUE in Activate() if any children of this scene have true for UIScreenObject.bSupports3DPrimitives
CurrentViewportSize[edit]
Type: Object.Vector2D
The current aspect ratio for this scene's viewport. For scenes modified in the UI editor, this will be set according to the value of the resolution drop-down control. In game, this will be updated anytime the resolution is changed.
Default value:
Member | Value |
---|---|
X | 1024.0 |
Y | 768.0 |
DockingStack[edit]
Type: array<UIRoot.UIDockingNode>
Modifiers: const, transient, native, private
Tracks the docking relationships between widgets owned by this scene. Determines the order in which the UIObject.Position values for each widget in the sceen are evaluated into UIObject.RenderBounds
Note: this variable is not serialized (even by GC) as the widget stored in this array will be serialized through the Children array.
InputSubscriptions[edit]
Type: Object.Map_Mirror{TMap< FName, TArray<struct FInputEventSubscription> >}
Modifiers: const, transient, native
Tracks the widgets owned by this scene which are currently eligible to process input. Maps the input keyname to the list of widgets that can process that event.
Note: this variable is not serialized (even by GC) as the widgets stored in this map will be serialized through the Children array
LastPlayerIndex[edit]
Type: int
Modifiers: transient
The index for the player that this scene last received input from.
PlayerOwner[edit]
Type: LocalPlayer
Modifiers: const, transient
The LocalPlayer which owns this scene. NULL if this scene is global (i.e. not owned by a player)
RenderStack[edit]
Modifiers: const, transient, private
Tracks the order in which widgets were rendered, for purposes of hit detection.
SceneClient[edit]
Type: UISceneClient
Modifiers: const, transient
the client for this scene - provides all global state information the scene requires for operation
SceneData[edit]
Type: SceneDataStore
Modifiers: const, instanced
The data store that provides access to this scene's temporary data
SceneLayerRoot[edit]
Type: UILayerBase
Modifiers: editoronly, const, private, transient
The root of the layer hierarchy for this scene; only loaded in the editor.
Todo: ronp - temporarily marked this transient until I can address the bugs in layer browser which are holding references to deleted objects (also commented out the creation of the layer browser).
ScenePreview[edit]
Type: Texture2D
Modifiers: editoronly
Preview thumbnail for the generic browser.
StandardContextMenu[edit]
Type: UIContextMenu
Modifiers: const, transient, private
This context menu will be used as the context menu for widgets which do not provide their own
StandardToolTip[edit]
Type: UIToolTip
Modifiers: const, transient, private
This tooltip widget will be used to display tooltips for widgets which do not provide custom tool-tip widgets.
Default values[edit]
Property | Value |
---|---|
DefaultStates[2] | Class'Engine.UIState_Focused' |
DefaultStates[3] | Class'Engine.UIState_Active' |
EventProvider | UIComp_Event'SceneEventComponent' |
Subobjects[edit]
SceneEventComponent[edit]
Class: Engine.UIComp_Event
Property | Value | ||||
---|---|---|---|---|---|
DefaultEvents[0] |
|
||||
DefaultEvents[1] |
|
||||
DefaultEvents[2] |
|
||||
DefaultEvents[3] |
|
||||
DefaultEvents[4] |
|
Delegates[edit]
GetSceneInputMode[edit]
Returns the screen input mode configured for this scene
OnSceneActivated[edit]
Allows others to be notified when this scene becomes the active scene. Called after other activation methods have been called and after focus has been set on the scene
Parameters:
- ActivatedScene - the scene that was activated
- bInitialActivation - TRUE if this is the first time this scene is being activated; FALSE if this scene has become active as a result of closing another scene or manually moving this scene in the stack.
OnSceneDeactivated[edit]
Allows others to be notified when this scene is closed. Called after the SceneDeactivated event, after the scene has published its data to the data stores bound by the widgets of this scene.
Parameters:
- DeactivatedScene - the scene that was deactivated
OnTopSceneChanged[edit]
This notification is sent to the topmost scene when a different scene is about to become the topmost scene. Provides scenes with a single location to perform any cleanup for its children.
Parameters:
- NewTopScene - the scene that is about to become the topmost scene.
Note: this delegate is called while this scene is still the top-most scene.
ShouldModulateBackgroundAlpha[edit]
Provides scenes with a way to alter the amount of transparency to use when rendering parent scenes.
Parameters:
- AlphaModulationPercent - the value that will be used for modulating the alpha when rendering the scene below this one.
Returns:
- TRUE if alpha modulation should be applied when rendering the scene below this one.
Functions[edit]
Native functions[edit]
ForceImmediateSceneUpdate[edit]
Triggers an immediate full scene update (rebuilds docking stacks if necessary, resolves scene positions if necessary, etc.); scene updates normally occur at the beginning of each scene's Tick() so this function should only be called if you must change the positions and/or formatting of a widget in the scene after the scene has been ticked, but before it's been rendered.
Note: noexport because this simply calls through to the C++ UpdateScene().
GetActiveContextMenu[edit]
Returns the scene's currently active context menu, if there is one.
GetActiveToolTip[edit]
Returns the scene's currently active tool-tip, if there is one.
GetDefaultContextMenu[edit]
Returns the scene's default context menu widget, creating one if necessary.
GetDefaultToolTip[edit]
Returns the scene's default tooltip widget, creating one if necessary.
GetPreviousScene[edit]
Returns the scene that is below this one in the scene client's stack of active scenes.
Parameters:
- bRequireMatchingPlayerOwner - TRUE indicates that only a scene that has the same value for PlayerOwner as this scene may be considered the "previous" scene to this one
GetSceneDataStore[edit]
Gets the data store for this scene, creating one if necessary.
GetWorldInfo[edit]
Returns the current WorldInfo
IsSceneActive[edit]
Wrapper for easily determining whether this scene is in the scene client's list of active scenes.
Parameters:
- bTopmostScene - specify TRUE to check whether the scene is also the scene client's topmost scene.
LoadSceneDataValues[edit]
Notifies all children that are bound to readable data stores to retrieve their initial value from those data stores.
RebuildDockingStack[edit]
Clears and rebuilds the complete DockingStack. It is not necessary to manually rebuild the DockingStack when simply adding or removing widgets from the scene, since those types of actions automatically updates the DockingStack.
ResetMouseBounds[edit]
Reset the 'MouseBounds' struct to its default values
ResolveDataStore[edit]
Find the data store that has the specified tag. If the data store's tag is SCENE_DATASTORE_TAG, the scene's data store is returned, otherwise searches through the global data stores for a data store with a Tag matching the specified name.
Parameters:
- DataStoreTag - A name corresponding to the 'Tag' property of a data store
- InPlayerOwner - The player owner to use for resolving the datastore. If NULL, the scene's playerowner will be used instead.
Returns:
- a pointer to the data store that has a Tag corresponding to DataStoreTag, or NULL if no data were found with that tag.
ResolveScenePositions[edit]
Iterates through the scene's DockingStack, and evaluates the Position values for each widget owned by this scene into actual pixel values, then stores that result in the widget's RenderBounds field.
SaveSceneDataValues[edit]
Notifies all children of this scene that are bound to writable data stores to publish their values to those data stores.
Parameters:
- bUnbindSubscribers - if TRUE, all data stores bound by widgets and strings in this scene will be unbound.
SetActiveContextMenu[edit]
Changes the scene's ActiveContextMenu to the one specified.
Parameters:
- NewContextMenu - the new context menu to activate, or NULL to clear any active context menus.
- PlayerIndex - the index of the player to display the context menu for.
Returns:
- TRUE if the scene's ActiveContextMenu was successfully changed to the new value.
SetActiveToolTip[edit]
Changes the scene's ActiveToolTip to the one specified.
SetMouseBounds[edit]
Modifies the scenes mouse boundaries during runtime.
Parameters:
- Face - the side of the scene which the boundary will be applied to
- Value - the value (in either pixels or percentage) of the current boundary
- bPixelValue - if true, 'Value' will be interpreted as a raw pixel value
- BoundaryObject - if set, Value/bPixelValue will be ignored and the mouse boundaries will be set based upon the input object
SetSceneInputMode[edit]
Changes the screen input mode for this scene.
UnbindSubscribers[edit]
Makes all the widgets in this scene unsubscribe from their bound datastores.
Events[edit]
CalculateInputMask[edit]
Determines the appropriate PlayerInput mask for this scene, based on the scene's input mode.
LogDockingStack[edit]
SceneActivated[edit]
Called just after the scene is added to the ActiveScenes array, or when this scene has become the active scene as a result of closing another scene.
Parameters:
- bInitialActivation - TRUE if this is the first time this scene is being activated; FALSE if this scene has become active as a result of closing another scene or manually moving this scene in the stack.
SceneDeactivated[edit]
Called just after this scene is removed from the active scenes array
SetInputMask[edit]
Overrides: UIScreenObject.SetInputMask
Changes the player input mask for this control, which controls which players this control will accept input from.
Parameters:
- NewInputMask - the new mask that should be assigned to this control
- bRecurse - if TRUE, calls SetInputMask on all child controls as well.
SetVisibility[edit]
Overrides: UIScreenObject.SetVisibility
Changes whether this widget is visible or not. Should be overridden in child classes to perform additional logic or abort the visibility change.
Parameters:
- bIsVisible - TRUE if the widget should be visible; false if not.
Other instance functions[edit]
AnimEnd[edit]
CloseScene[edit]
Closes the specified scene.
Parameters:
- SceneToClose - Scene that we want to close.
- bSkipKismetNotify - Whether or not to close the kismet notify for the scene.
- bSkipAnimation - Whether or not to skip the close animation for this scene.
LogCurrentState[edit]
Overrides: UIScreenObject.LogCurrentState
LogRenderBounds[edit]
NotifyGameSessionEnded[edit]
Called when the current map is being unloaded. Cleans up any references which would prevent garbage collection.
NotifyLinkStatusChanged[edit]
Called when the status of the platform's network connection changes.
NotifyOnlineServiceStatusChanged[edit]
Notification that the player's connection to the platform's online service is changed.
OpenScene[edit]
Opens a UI Scene given a reference to a scene to open.
Parameters:
- SceneToOpen - Scene that we want to open.
- bSkipAnimation - specify TRUE to indicate that opening animations should be bypassed.
- SceneDelegate - if specified, will be called when the scene has finished opening.
SceneCreated[edit]
Default handler for the OnCreateScene delegate