Files
UE5-Modular-Game-Framework/docs/blueprints/12-settings/104_BPC_AccessibilitySettings.md
Lefteris Notas 411edea8ce add blueprints
2026-05-19 13:22:27 +03:00

5.4 KiB
Raw Blame History

72 — BPC_AccessibilitySettings

Blueprint Spec — UE 5.55.7


Parent Class

ActorComponent

Dependencies

Purpose

Applies accessibility-focused modifications to the game based on user settings including colorblind modes, subtitle configuration, screen shake reduction, high-contrast UI, text-to-speech, reduced motion, and audio cue visualizations. Operates as a local player component that reads from SS_SettingsManager and applies changes at runtime.

Enums

EColorBlindMode

Value Description
None Default colors
Protanopia Red-blind filter
Deuteranopia Green-blind filter
Tritanopia Blue-blind filter

ESubtitleSize

Value Description
Small Default size
Medium 150% size
Large 200% size
ExtraLarge 300% size

EScreenShakeLevel

Value Description
Full All screen shakes enabled
Reduced 50% intensity cap
Minimal 25% intensity cap
Off No screen shake

Variables

Name Type Description
ColorBlindMode EColorBlindMode Current colorblind filter
SubtitleSize ESubtitleSize Subtitle text scale
bHighContrastUI Bool High contrast mode
bTextToSpeech Bool TTS for UI text
bReducedMotions Bool Disable UI animations
bLargeText Bool Enlarge all UI text
ScreenShakeLevel EScreenShakeLevel Camera shake intensity
bVisualizeAudioCues Bool Show audio direction indicators
bAutoReadDialogue Bool Auto-play dialogue subtitles
bPauseOnDialogue Bool Auto-pause during dialogue
bDisableFlashEffects Bool Prevent strobe/photosensitive effects

Functions

Name Inputs Outputs Description
Initialize Read settings, apply initial state
SetColorBlindMode Mode: EColorBlindMode Apply colorblind filter
SetSubtitleSize Size: ESubtitleSize Update subtitle scale
SetHighContrastUI bEnabled: Bool Toggle high contrast
SetTextToSpeech bEnabled: Bool Toggle TTS
SetReducedMotions bEnabled: Bool Toggle reduced motion
SetLargeText bEnabled: Bool Toggle large text
SetScreenShakeLevel Level: EScreenShakeLevel Update shake intensity
SetVisualizeAudioCues bEnabled: Bool Toggle audio visualization
SetDisableFlashEffects bEnabled: Bool Disable flashing effects
ApplyColorBlindCorrection Post-process color matrix
ApplyHighContrastMaterials Override UI material
DisableFlashInVFX Remove strobe from VFXManager
HandleDialogueAutoRead DialogueText: FText TTS for dialogue
ProvideAudioDirectionIndicator SoundLocation: FVector Show direction arrow
ReadUITextAloud Text: FText TTS for UI elements

Blueprint Flow

[Initialize]
  └─► Read from SS_SettingsManager:
         ColorBlindMode = GetSetting("ColorBlindMode")
         SubtitleSize = GetSetting("SubtitleSize")
         bHighContrastUI = GetSettingBool("HighContrastUI")
         etc.
  └─► ApplyColorBlindCorrection()
  └─► ApplyHighContrastMaterials()
  └─► Register callbacks for OnSettingChanged dispatcher

[ApplyColorBlindCorrection]
  └─► Use UPostProcessComponent on player camera
  └─► Set Color Grading LUT based on mode:
         Protanopia:    Shift red channel matrix
         Deuteranopia:  Shift green channel matrix
         Tritanopia:    Shift blue channel matrix
  └─► Apply via PostProcessSettings.ColorGradingSettings

[ApplyHighContrastMaterials]
  └─► Override all WBP widget materials with high-contrast versions
  └─► Increase outline thickness on all interactive elements
  └─► Increase font weight and contrast ratio

[DisableFlashInVFX]
  └─► Call BPC_VFXManager.SetFearVFXEnabled(false) during flash sequences
  └─► Remove strobe flicker from BPC_LightingManager fear-reactive lights
  └─► Replace flash transitions with fade transitions

Communications With

Target Method Why
SS_SettingsManager Event Settings changes
BPC_VFXManager Get owner Disable flash effects
BPC_LightingManager Get owner Disable flicker
BPC_AudioManager Get owner Audio cues
BPC_TutorialSystem Direct call Accessible tutorials

Reuse Notes

  • Color blindness correction uses post-process color grading matrix
  • Subtitle scaling modifies URichTextBlock font size globally
  • High contrast mode uses alternate widget styles
  • Screen shake reduction caps camera shake intensity in player controller
  • Visual audio cues use world-space widget arrows pointing to sound origin
  • Flash effect disable also affects DynamicEvent light flicker