配置 Shared Settings
在项目设置的 Generic Settings System 区域,指定项目派生的 UGSS_CommonSettingsShared 类,并在 Startup Provider Classes 中添加需要的 Provider。这个基类把每个本地玩家的偏好保存到 Shared SaveGame;项目仍需在 ApplySettings 中把已存值应用到自身音频、输入或辅助功能系统。
可选内置 Provider
GenericSettingsSystemCommon 包含以下 Provider:
- Video:窗口模式、显示器、分辨率、亮度、综合画质及渲染质量选项。它读取和写入本机
UGameUserSettings,普通情况下仅主本地玩家可以修改。 - Audio:提供音量类偏好。项目须将这些值接到实际的 Sound Class、Submix 或自有音频路由。
- Input:提供设备偏好,例如反转轴、灵敏度、死区或震动。它不实现 Enhanced Input 的按键重映射,也不决定玩法输入策略。
- Accessibility:提供字幕、颜色视觉和动作相关偏好;项目须将偏好应用到自己的呈现系统。
- Language:枚举已打包的游戏 Culture,并在 Apply 时写入 Unreal 国际化 Culture。部分语言变化可能需要重启才能完全生效。
Provider 可作为完整方案启用,也可通过蓝图子类调整包含的设置项。不要把机器级 Video 配置与按玩家隔离保存的 Shared 偏好混为一谈。
平台条件与项目职责
Video 项会根据平台能力和 CommonUI 平台 Trait 调整可见或可编辑状态。例如,窗口模式、显示器和分辨率取决于窗口化能力;窗口化全屏与独占全屏的分辨率规则不同。亮度和动态分辨率也受对应平台 Trait 控制。
内置设置定义的是可编辑偏好,不会自动替项目实现所有玩法效果。项目应订阅或读取相应设置值,并决定何时应用、如何保存项目专属数据以及是否支持热切换。只隐藏单个 Video 项时,优先调整 Provider 的包含列表,不要复制整套注册逻辑。