Add asset creation sheets for various systems and UI components
- Created Save/Load & Death Loop asset sheet detailing checkpoint, death handling, and respawn systems. - Added UI widget creation sheets for pause menu, settings menu, inventory, journal viewer, objective display, notification toast, screen effect controller, accessibility UI, diegetic HUD frame, menu flow controller, and credits screen. - Implemented HUD controller and interaction prompt display assets with detailed wiring instructions. - Established narrative systems asset sheet including components for narrative state, objectives, dialogue playback, and branching consequences. - Developed weapons, AI, and adaptive systems asset creation sheet outlining weapon base, enemy AI components, and adaptive gameplay mechanics. - Compiled meta, settings, and polish asset creation sheet covering progress tracking, achievement systems, accessibility settings, and various polish components. - Defined input actions and mapping contexts for enhanced input system, including gameplay actions and context priorities. - Created state management assets including enums, structs, data asset, and state manager component for action gating and state transitions.
This commit is contained in:
72
docs/blueprints/06-ui/WBP_HUDController.asset.md
Normal file
72
docs/blueprints/06-ui/WBP_HUDController.asset.md
Normal file
@@ -0,0 +1,72 @@
|
||||
# WBP_HUDController — Asset Implementation
|
||||
|
||||
> **UE5 Asset:** `/Game/Framework/UI/WBP_HUDController`
|
||||
> **Parent Class:** `UserWidget`
|
||||
> **Purpose:** Root HUD widget — manages all HUD sub-widgets
|
||||
|
||||
---
|
||||
|
||||
## Create This Widget
|
||||
|
||||
1. Content Browser → `Content/Framework/UI/`
|
||||
2. Right-click → **User Interface → Widget Blueprint**
|
||||
3. Name: `WBP_HUDController`
|
||||
|
||||
---
|
||||
|
||||
## Designer Canvas Setup
|
||||
|
||||
```
|
||||
Canvas Panel (root)
|
||||
├─ WBP_InteractionPromptDisplay (bottom-center)
|
||||
├─ WBP_ObjectiveDisplay (top-right)
|
||||
├─ WBP_NotificationToast (top-center)
|
||||
├─ HealthBar (ProgressBar) (bottom-left) [inline or sub-widget]
|
||||
├─ StaminaBar (ProgressBar) (bottom-left, below health)
|
||||
├─ AmmoDisplay (TextBlock) (bottom-right)
|
||||
├─ Crosshair (Image) (center)
|
||||
└─ WBP_DiegeticHUDFrame (full screen, behind everything)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## What to Wire
|
||||
|
||||
### Event: Event Construct
|
||||
```
|
||||
[Event Construct]
|
||||
├─ Get Owning Player Pawn → Store as CachedPawn
|
||||
├─ Get Pawn → GetComponentByClass(BPC_HealthSystem) → Bind OnHealthChanged
|
||||
├─ GetComponentByClass(BPC_StaminaSystem) → Bind OnStaminaChanged
|
||||
├─ Get GameState → Cast to GS_CoreGameState → Bind OnObjectiveTagsChanged
|
||||
└─ Get GameInstance → Cast to GI_GameFramework → Bind OnGamePhaseChanged
|
||||
```
|
||||
|
||||
### Health Binding (Custom Event)
|
||||
```
|
||||
[OnHealthChanged(Current, Max, Delta)]
|
||||
├─ HealthBar → Set Percent(Current / Max)
|
||||
├─ Branch: Delta < 0?
|
||||
│ True → Play Animation (DamageVignette)
|
||||
└─ Branch: Current <= 0?
|
||||
└─ Call WBP_ScreenEffectController → PlayDeathEffect
|
||||
```
|
||||
|
||||
### GamePhase Binding
|
||||
```
|
||||
[OnGamePhaseChanged(NewPhase)]
|
||||
├─ Switch on NewPhase:
|
||||
│ MainMenu → Hide HUD
|
||||
│ InGame → Show HUD
|
||||
│ Paused → Dim HUD, show pause overlay
|
||||
│ Cutscene → Hide HUD
|
||||
│ DeathLoop → Show death screen
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Test It
|
||||
- [ ] PIE with player pawn: HUD displays
|
||||
- [ ] Take damage: health bar updates
|
||||
- [ ] Sprint: stamina bar drains
|
||||
- [ ] Open menu: HUD hides/disables
|
||||
Reference in New Issue
Block a user