Skip to content
Media 1 for listing SGC Layout System
0 comments

Description

SGC Layout System is a lean C++ CommonUI shell for Unreal Engine — Primary Layout, layer stacks, named slots, and async widget push without a Lyra experience stack.

Attention! The plugin is under development and may change. Stay tuned for updates and documentation (En/Ru).

The package includes only the plugin’s source code.

Supports:

Built for strategy, RPGs, city builders, and any title where UI stays on a Game Instance across map travel. The plugin owns layout lifecycle, soft class loading, and input gating; you own visuals in Blueprint (UCommonActivatableWidget).

Key Features

  • Primary Game Layout — Abstract USGCPrimaryGameLayout (Lyra-inspired) hosts Common Activatable stacks registered by UI.Layer.* tag. One root layout per client; travel detaches and re-adds it (content is cleared; re-push yourself).

  • Push Content To Layer — Blueprint async node: soft-push onto a tagged stack. Sync if loaded; else Soft Content load with in-flight coalescing (no hard refs after callback). OnCompleted returns the widget or null. Queued until the shell is ready.

  • Game Instance UI Manager — USGCUIManagerSubsystem creates the layout from Project Settings, queues layer pushes, handles Open Level / world cleanup, and exposes pop / query helpers.

  • Input Gate — Suspend and resume Common Input via tokens (player-wide) while a layer widget is soft-loading.

  • Blueprint Extensions — USGCCommonUIExtensions: suspend/resume input, pop active or specific widget, get active widget on a layer, clear slot content.

  • Named Slot Hosts — USGCNamedSlot + resolver for UI.Slot.* holes in your layout WBP. Push Content To Slot uses the same soft-load path; one widget per slot, latest wins.

  • Optional Game Feature Actions — Off by default. Enable in Project Settings (restart) and GameFeatures. Add Widget To Layer / Add Widget To Slot use the same C++ payload as the Blueprint nodes.

  • Project Settings — Primary Layout class and Z-order under Project Settings → Plugins → SGC Layout System. No C++ required for basic setup.

Architecture

  • C++ core, Blueprint setup — Shared payloads; nodes and Game Features only supply data. Modules: SGCCommonUIRuntime, optional SGCCommonUIGameFeatures, SGCCommonUIEditor.

  • No plugin content — Bring your own Primary Layout Blueprint, tags, and widget assets.

  • Client-only UI — Subsystems skip dedicated servers.

  • Tags — UI.Layer.* stack, UI.Slot.* host, UI.Widget.* catalog id (not a push address).

  • Blueprint-Friendly — Register layers/slots on a Primary Layout WBP, assign the class in Project Settings, push with Push Content To Layer / Slot.

    Attention: Sample UI is not included. Provide your own USGCPrimaryGameLayout Blueprint and Gameplay Tags (UI.Layer.* / UI.Slot.* / UI.Widget.*).

Included formats