As far as I’m aware, your Slate User Interface “widget” is spawned and maintained by your HUD. Have a look at this tutorial series for an introduction into Slate.
Interesting, so i should include Slate Widgets manually to my custom HUD class. Or may be there is another, more official way?
For example how to make different Cameras and different Scenes/Levels to be drawn in different widgets? What if i dont want to make fullscreen viewport, or i want to have multiple viewports?
If you want multiple viewports I assume you will have multiple players, in that case you would just have different player controllers for each player, and each player controller will have it’s own instance of a HUD and each HUD would create it’s own separate Slate Widget (each player “has a” Player Controller which “has a” HUD which “has a” Slate Widget).
Unfortunately, I haven’t looked into “split-screen” implementations like this, so I can’t be of much help. But I am quite sure it is possible in UE4.
No, AHUD doesnt contains User Interface, i have to create UI class for my game myself.
If i need per HUD specific user interface, I can create and hold SWidget inside my overrided AHUDs.
If i need MainWindow UI for whole game, i can create my SMainWindow widget, override UGameViewportClient, and use UGameViewportClient->SetViewportOverlayWidget to setup my SMainWindow. After that, i can setup “Editor->Edit->Project Settings->Engine->General Settings->Default Classes->Game Viewport Client Class” with my overrided UGameViewportClient, officially.