
虚幻引擎 - 通用游戏系统

Updated: Jul 25, 2025
🎮系统概述
通用游戏系统(GGS)是一个多模块的代码插件,旨在为任何类型的游戏提供基础功能。它扩展了 Unreal Engine 的部分模块功能,使其更易于使用。
📚文档:English 中文 | 💬 社区: Discord
该插件高度复用,广泛应用于我的其他系统的配套项目中。
🌟系统特性
GGS 包含以下独立或协同使用的系统:
🎨交互系统
基于 SmartObject 和 GameplayAbilities 构建,提供灵活的交互机制:
- 交互系统组件:管理玩家的潜在交互对象切换、可用的交互选项构建及网络状态复制。
- 基于 GameplayAbility:将交互逻辑封装在 GameplayAbility 中,实现可插拔的交互设计。
- 基于 SmartObject:利用 SmartObject 的预定/保留系统,支持多玩家同时交互。
🧩UI 系统
深度集成 Unreal Engine 的 CommonUI 和 CommonInput 模块,提供高效的 UI 开发框架:
- 易用的 Widget:扩展的 UMG 组件,支持数据驱动的 UI 开发(如 ListView 根据配置选择不同的 WidgetEntryClass)。
- 便于管理:提供类似 Lyra 的多层级 UI 管理框架,易于在蓝图中扩展,统一管理复杂的 UI 层级关系。
- 良好适配性:无缝配合官方的 UI Material Lab,通过材质管理 Widget 状态,提供灵活且性能优越的解决方案。
- Modal 系统:可扩展的 Modal 系统,处理常见的消息提示和确认框。
- 设计理念:专注于扩展性,不对游戏 UI 样式做假设。
💥情景效果系统
ContextEffects 系统基于 GameplayTags 管理情境,自动播放音效和特效,适用于脚步声/效等场景:
- 易于集成:为 Actor(如角色或武器)添加一个组件即可接入。
- 数据驱动:通过数据资产配置不同情境的音效/特效。
- 自动化脚步:通过动画修改器自动定位角色脚部,并配置“播放情景特效”动画通知。
- 高适配度:适用于脚步系统及近战碰撞等需要动态音效/特效的场景。
- 简洁的 API:通过简单的蓝图调用触发音效/特效。
- 高灵活性:基于 GameplayTags 在不同物理材质表面动态播放音效/特效,自动化脚步音效/特效设置,无需硬编码资产引用。
🎥相机系统
采用栈式管理游戏中的相机、相机臂及镜头参数,支持即时切换相机模式并处理过渡:
- 易于整合:在角色上添加 GCMS_CameraSystemComponent 组件即可启用。
- 模块化:每个相机模式独立处理镜头参数,专注于镜头控制逻辑。
- 灵活易用:通过调用 PushCameraMode API 即可切换相机模式。