📺 项目演示视频
🛠️ 技术栈
- Engine: Unreal Engine 5.4
- Language: C++ (Core Logic), Blueprints (Visuals)
- Framework: Gameplay Ability System (GAS)
- Key Modules: AttributeSet, GameplayAbilities, GameplayEffects, GameplayTags
📝 项目核心技术方案
本项目深入探索了虚幻引擎 GAS (Gameplay Ability System) 的工程实践。以下是核心技术实现点:
1. 属性集 (AttributeSet) 与动态伤害结算
- 高度解耦: 实现了
UAttributeSet派生类,包含生命值、法力值、攻击力等核心属性。 - 伤害公式: 通过覆盖
PostGameplayEffectExecute方法,实现了基于攻击力与防御力系数的动态伤害预计算逻辑。 - UI 同步: 利用多播委托机制,将属性变化实时推送到 UI 层,保证了逻辑与表现的完全分离。
2. 技能系统 (GameplayAbilities)
- 能力设计: 实现了连击、闪避(Dash)以及具有冷却控制(Cooldown)和消耗(Cost)的各种主动技能。
- 标签控制: 利用
GameplayTags驱动技能状态机,精准控制技能之间的互斥(例如:受击状态下无法释放闪避)。
3. 多线程与性能优化
- 异步处理: 在处理复杂属性结算和预测(Prediction)时,充分利用了 GAS 框架的同步特性。
- 内存管理: 对 C++ 中的指针和对象生命周期进行了严格管理,避免了频繁触发垃圾回收导致的顿挫感。
📸 部分截图预览