Directory : ~/ImmerseUI/Blueprints/Widgets/WBP_UserInterface
#
Overview
WBP_UserInterface
= Control the main ui and setupWidgetLayer
's with presets data.WidgetLayer
= Base of all WidgetSwitcher childs, except of main menu.BP_WidgetWorker
= Level object for create Main Widget and animate element using Timeline.BP_MenuPawn
= Menu level pawn for call menu controll (OPTIONAL), change location and renderBP_ScreenBG
.BP_ScreenBG
= Level object 3D screens connectable to widget.
#
BP_WidgetWorker
Level object for create Widget and using Timeline with UI.
- Structure
- AnnouncementBoxSetUp
main menu announcement box widget setups and bindings
. - AnnouncementBoxSlides
slide announcement box widget with Timeline
. - MoveOnTilmeLine_SlideHorizontal
move Widgets with transform ref and parameter on Timeline Horizontal
. - MoveOnTilmeLine_SlideVertical
move Widgets with transform ref and parameter on Timeline Vertical
.
- AnnouncementBoxSetUp
#
BP_MenuPawn
Menu level pawn for controll/render 3D stuffs
- Structure
- SetUp Mapping and GameMode.
- CineCamera
Menu render camera overrided PP and view setting by ScreenBg cinecamera
. - OpenScreen
Close last used ScreenBG and open target screen
. - Menu Controls Call
Can connected to WBP_UserInterface Control Comment Section
. - OpenLoadingScreen.
#
BP_ScreenBG
Level object 3D screens connectable to widget.
- Structure
- CineCamera
get custom view and PP for per screen
. - BG
Plane for render texture
. - MoveBackground
Abbility of move 3D plane with pointer delta
. - OnOpen
On Open Screen Overridable Event
. - OnClose
On Close Screen Overridable Event
.
- CineCamera
#
WidgetLayer
Base of all WidgetSwitcher childs, except of main menu.
- Structure
- bIsInitialized
is data generated
. - MainLayer
WBP_UserInterface Referance
. - OnEnterLayer
On Enter Layer Overridable Event
. - OnExitLayer
On Exit Layer Overridable Event
.
- bIsInitialized
#
WBP_UserInterface
Detail Panel > Default
piano style enter motion speed.
overrided from CurrentWidgetLayer
.
sounds added for demonstration, add some new sound and pull in the target WidgetLayer
with using GetMainLayer.SoundLabel
.
Detail Panel > Data Table
contain all generative datas and initialize to WidgetSwitcher
childs WidgetLayer
.
Detail Panel > Widget Layer
list of widget layer setting, samely indexed with Widget Switcher child.
- Title
- Back To Main Menu
when we don't need, leave just empty the back MM block will close automatically [OPTIONEL]
.
- Back To Main Menu
- Connected Screen
- 3D world connected screen for switching correspondent background.
- Use Exit Control
- Auth state of keyboard/gamepad usage for back to main menu. exp:
Escape
.
- Auth state of keyboard/gamepad usage for back to main menu. exp:
- Control1
- Auth state of keyboard/gamepad usage for next slide/selection or custom impl of WidgetLayer Calls . exp:
E
.
- Auth state of keyboard/gamepad usage for next slide/selection or custom impl of WidgetLayer Calls . exp:
- Control2
- Auth state of keyboard/gamepad usage for prev slide/selection or custom impl of WidgetLayer Calls . exp:
Q
.
- Auth state of keyboard/gamepad usage for prev slide/selection or custom impl of WidgetLayer Calls . exp:
#
Screen Switching
- When screens change system get the preset in WidgetLayer list and apply changes.
- When we change the screen, we call OnExitLayer on the exiting screen.
- Set Up
- Enable/Disable control buttons and set auths.
- Enable/Disable/Set Back To Main Menu Block.
- Open 3D World Background Screen.
In directory file find Initialization comment block. All menu button binding start in Initialization comment block.
#
Initialization Comment Block
- bind all of our main menu buttons to corresponded widget/logic.
In directory file find OnPagesOpen comment block. All Data creations start in OnPagesOpen comment block.
#
OnPagesOpen Comment Block
- exp : GenerateChapterItems (collapsed node).
- when data created, toggle the subject
WidgetLayer
IsInitialized
boolean for stopping new generation. - on data generation end, call the
OnEnterLayer
in subjectWidgetLayer
for manipulate/reset/load/update/etc... custom data actions. - finally assign the current used
WidgetLayer
toCurrentWidgetLayer
variable.
In directory file find Controls comment block. All menu virtual/button controls start in Controls comment block.
#
Controls Comment Block
- set up our dynamic page controls
- Exit to Main Menu.
- Invoke Control1 .
- Invoke Control2 .
- Virtual Buttons .