
Açıklama
A C++ loading screen solution for Unreal Engine 5 covering both engine boot and in-game map travel.
Built for projects that need a polished first impression at startup and controlled loading feedback during level transitions — strategy games, RPGs, city builders, and any title where loading should feel intentional rather than accidental. The plugin splits cleanly into two phases: a Slate-based Startup PreLoad screen (before the engine is fully ready) and a Travel Loading Screen driven by a GameInstanceSubsystem with a custom UMG widget you own. All configuration lives in Project Settings — no code changes required for a working setup.
Key Features
Startup PreLoad Screen — A native Slate screen integrated with UE’s PreLoadScreen pipeline. Appears during engine initialization on packaged builds, before your game world exists. Fully configurable from Project Settings → SGC Startup Loading Screen:
Branded Layout — Background image, logo, tint overlay, tip text, version string, and throbber. Layout ratios, padding, and text styles are all exposed.
Live Compile Feedback — Real-time status for shader and asset compilation (Compiling Shaders: X/Y, Compiling Assets: X/Y) with a fallback status message when no compile work is active.
Hold Time — Optional extra display duration after engine loading completes, so the screen doesn’t flash away instantly.
Startup Movie Ordering — Optional mode to play UE Startup Movies before the custom PreLoad screen, for projects that use both systems.
Packaging-Ready Assets — Startup images live in a dedicated StartupLoading folder, automatically staged as non-UFS. Editor tooling provides image pickers with live preview.
Travel Loading Screen — A GameInstanceSubsystem that manages your loading UI during map transitions:
Automatic Show on Travel — Screen appears on PreLoadMap and is re-shown after the map loads until you explicitly dismiss it.
Manual Dismiss — You control when loading ends. Call DismissLoadingScreen from Blueprint or C++ when your game is ready — ideal for async initialization, experience loading, or menu transitions.
Custom UMG Widget — Assign any Blueprint subclass of USGCLoadingScreenWidget. Full visual freedom: animations, progress bars, lore tips — whatever your designers need.
Shader Pipeline Boost — Enables fast shader pipeline cache batching while the loading screen is visible, reducing hitch when gameplay starts.
Optional Input Blocking — Configurable input swallowing while the screen is up.
Robust Viewport Handling — Automatic retry if the viewport isn’t ready yet; async preloading of the widget class before travel.
Blueprint Integration
Pre-Experience Load Status — Async Blueprint node that streams live asset and shader compile progress into your custom loading widget. Fires OnStatusChanged with formatted status text and a completion flag — perfect for driving progress UI during Game Feature / experience loading.
Dismiss from Widget — Convenience DismissLoadingScreen call directly on the widget class for designer-friendly graphs.
Debug Metrics Overlay — Separate GameInstanceSubsystem that renders an optional FPS and memory overlay. Configurable corner, font, color, z-order, and update interval. Independent from the loading screen lifecycle.
Architecture
Three focused modules — Startup (ClientOnly, PreLoadingScreen phase), Runtime (travel loading + debug), Editor (settings customization).
C++ core, Blueprint surface — Performance-sensitive boot rendering in Slate; travel UI in UMG where designers work.
No plugin content dependency — Bring your own images and widget Blueprints.
Multi-platform — Win64, Mac, Linux, Android, iOS.
Blueprint-Friendly — Set up travel loading in 4 steps: create a Widget Blueprint based on USGCLoadingScreenWidget, assign it in Project Settings → SGC Loading Screen, configure startup branding in SGC Startup Loading Screen, call DismissLoadingScreen when your game is ready to play.




