How-To: Get the Building Blocks
Goal: get the three pieces every other page assumes you can reach - the manager subsystem, the project settings, and the two content data assets. Bookmark this page; the task pages link back here instead of repeating these chains.
1. The manager subsystem
UCrimsonLoadingScreenManager is a game-instance subsystem: it exists once, for the whole session, and survives every level change. All runtime reads and event bindings go through it.
Images/CrimsonLoadingScreen/bb-get-manager-bp.png2. The project settings
All configuration lives on UCrimsonLoadingScreenSettings at Project Settings -> Crimson -> Crimson Loading Screen and persists to Config/DefaultGame.ini. Sections: Display, Timing, Tips, Backgrounds, Cinematic Preview, Debugging (full table in API Reference).
C++ reads the settings object directly:
#include "CrimsonLoadingScreenSettings.h"const UCrimsonLoadingScreenSettings* Settings = GetDefault<UCrimsonLoadingScreenSettings>();const int32 ZOrder = Settings->LoadingScreenZOrder;
[/Script/CrimsonLoadingScreen.CrimsonLoadingScreenSettings] in DefaultGame.ini.3. The content data assets
Tips and backgrounds are plain data assets - the plugin ships none, you author them. Create both the same way: Content Browser -> right-click -> Miscellaneous -> Data Asset, then pick the class.
Images/CrimsonLoadingScreen/bb-create-data-assets.png4. Reading live state
All manager reads are pure Blueprint nodes (and plain C++ getters). This is the complete read surface:
| Getter | Returns | Empty/null when |
|---|---|---|
GetCurrentTip | FText of the tip for this load | No TipsCollection set, or no tip matched the filter |
GetCurrentTipCategory | FGameplayTag of that tip | Same as above |
GetCurrentBackground | UMaterialInterface* | No BackgroundCollection set |
GetShowcaseRenderTarget | UTextureRenderTarget2D* | bUseLivePreview is off, or no render target assigned |
GetCachedCharacterInfo | FCrimsonLoadingCharacterInfo snapshot from when the screen opened | No provider found (check MeshComponents is non-empty) |
GetLocalPlayerCharacterInfo | Live provider query (use outside loading, e.g. menus) | No provider found |
GetLoadingScreenDisplayStatus | bool - widget currently on the viewport | - |
GetDebugReasonForShowingOrHidingLoadingScreen | FString explaining the current state | - |
See also
- How-To: Show Tips & Backgrounds - fill and register the data assets from step 3.
- How-To: React to Loading Screen Events - event-driven alternative to polling the getters.
- API Reference - the full settings table and every signature.