Add DA_RenderPipelineProfile and Platform Render Profiles documentation
- Introduced DA_RenderPipelineProfile data asset to define rendering pipeline configurations for various platforms and quality tiers. - Documented enums, structs, variables, and default preset tables for render settings. - Created a comprehensive developer guide for setting up platform-specific render profiles, including file structure, profile creation, and integration with upscalers. - Included validation rules, console variable references, and testing matrices for ensuring compliance with platform requirements.
This commit is contained in:
@@ -8,6 +8,8 @@
|
||||
`ActorComponent`
|
||||
|
||||
### Dependencies
|
||||
- [`BPC_RenderPipelineManager`](../12-settings/149_BPC_RenderPipelineManager.md) — **Delegates all CVar application** (GI, shadows, upscaling, Nanite, quality tiers)
|
||||
- [`DA_RenderPipelineProfile`](../14-data-assets/DA_RenderPipelineProfile.md) — Reads render config per platform + quality tier
|
||||
- [`BPC_LightingManager`](65_BPC_LightingManager.md) — Controls light quality
|
||||
- [`BPC_AudioManager`](66_BPC_AudioManager.md) — Controls audio quality
|
||||
- [`BPC_VFXManager`](67_BPC_VFXManager.md) — Controls particle LOD
|
||||
@@ -16,7 +18,7 @@
|
||||
- [`GI_GameFramework`](../01-core/04_GI_GameFramework.md) — Frame time measurement
|
||||
|
||||
### Purpose
|
||||
Automatically adjusts graphics, audio, and gameplay quality settings based on real-time performance metrics (frame time, draw calls, memory usage). Provides a unified interface for all other systems to scale their quality without direct awareness of the hardware. Supports manual user override via Settings menu and adaptive automatic mode. Maintains a performance budget that is dynamically allocated across subsystems.
|
||||
Automatically adjusts rendering, audio, and gameplay quality settings based on real-time performance metrics (frame time, draw calls, memory usage). **Delegates all render pipeline CVar changes to `BPC_RenderPipelineManager`** — this component focuses on monitoring performance and deciding WHEN to change quality tiers. The RenderPipelineManager handles the HOW (which CVars to execute, whether a reload is needed). Supports manual user override via Settings menu and adaptive automatic mode. Maintains a performance budget that is dynamically allocated across subsystems.
|
||||
|
||||
### Enums
|
||||
|
||||
@@ -128,13 +130,15 @@ Automatically adjusts graphics, audio, and gameplay quality settings based on re
|
||||
└─► If CurrentQualityLevel == Level: return
|
||||
└─► TargetQualityLevel = Level
|
||||
└─► bIsScalingInProgress = true
|
||||
└─► ApplyScalerSettings(Level)
|
||||
└─► For each subsystem:
|
||||
BPC_LightingManager: SetParticleLOD mapped to QualityLevel
|
||||
└─► Delegate to BPC_RenderPipelineManager.ApplyQualityPreset(PresetName)
|
||||
→ RenderPipelineManager handles ALL CVar application
|
||||
→ Reads DA_RenderPipelineProfile for current platform
|
||||
→ Returns whether reload is required
|
||||
└─► For each non-render subsystem:
|
||||
BPC_LightingManager: Reduce dynamic light count
|
||||
BPC_AudioManager: Reduce active layers and spatial audio
|
||||
BPC_VFXManager: SetParticleLOD mapped to QualityLevel
|
||||
BPC_AtmosphereController: Reduce preset complexity
|
||||
└─► Apply UE console variables for resolution, shadows, textures, foliage
|
||||
└─► bIsScalingInProgress = false
|
||||
└─► CurrentQualityLevel = TargetQualityLevel
|
||||
└─► OnQualityLevelChanged.Broadcast(CurrentQualityLevel)
|
||||
@@ -215,6 +219,7 @@ Automatically adjusts graphics, audio, and gameplay quality settings based on re
|
||||
|
||||
| Target | Method | Why |
|
||||
|--------|--------|-----|
|
||||
| [`BPC_RenderPipelineManager`](../12-settings/149_BPC_RenderPipelineManager.md) | Direct call | **All render CVar application** — delegates quality tier to pipeline manager |
|
||||
| [`GI_GameFramework`](../01-core/04_GI_GameFramework.md) | Direct call | Frame time data source |
|
||||
| [`SS_SaveManager`](../05-saveload/28_SS_SaveManager.md) | Direct call | Save/load settings |
|
||||
| [`BPC_LightingManager`](65_BPC_LightingManager.md) | Get from player | Light quality reduction |
|
||||
|
||||
Reference in New Issue
Block a user