首页 > 其他分享 >UE4技能系统GameplayAbilitySystem

UE4技能系统GameplayAbilitySystem

时间:2022-10-18 23:44:39浏览次数:75  
标签:GameplayAbilitySystem 框架 效果 GAS UE4 技能

注:本分享主要面向策划,重点介绍GAS框架的思想,以期拓展技能机制的设计思路,其中设计技术实现的部分,可参见:

在文中如果出现UE4中实现的注意事项,会用(UE_Note)标记。

https://blog.csdn.net/pirate310/article/details/106311256 GasShooter演示项目的示例文档。

https://docs.unrealengine.com/zh-CN/InteractiveExperiences/GameplayAbilitySystem/index.html 官方GAS文档

当然最好的文档是源码: Plugins/Runtime/GameplayAbilities/

技能系统应该包括哪些功能?

逻辑:

  • 技能的获得和施放。

  • 各种触发效果、条件判断。

  • Buff系统

视听效果:

  • 角色动画

  • 特效

  • 音效

数据:

  • 属性系统

  • 数据配置

 GAS框架的主要组成   :

  

  

GAS框架如何实现技能需求:

技能的所有者:AbilitySystemComponent。

技能的逻辑:GameplayAbility。

技能效果:GameplayEffect。

技能修改的属性:AttributeSet。

技能涉及的条件:GameplayTag。

技能视频音频:GameplayCue。

技能的异步行动:GameplayTask。

技能目标:GameplayTaskActor。

其中,GameplayTask和GameplayTag是UE4Gameplay框架原有的概念,但在GAS框架中被深度使用。

GAS框架的优缺点:

这张图摘自2020UOD的演讲PPT,列出了EpicGames大钊看来GAS框架的优势和劣势。

        GAS框架的一个主要优势,在于将一个技能的各个逻辑进行了适当的解耦设计,大幅降低了思考粒度,比如在设计一个技能的输入规则、选目标操作、何时触发效果时,不需要考虑效果的具体内容,甚至可以交给另一个完全不了解技能规则,但负责设计效果和数值的人来配置,而不用担心互相之间会产生影响。这点在实际使用时会带来相当大的便利,即时是一个人开发,同一时间也可以专心于一项任务,不用担心会影响之前或之后的工作。

          对虚幻使用的DS网络框架来说,GAS实现了较为完善的网络同步和预测机制,几乎所有会影响技能表现的逻辑都实现了客户端的预测及回滚功能。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

标签:GameplayAbilitySystem,框架,效果,GAS,UE4,技能
From: https://www.cnblogs.com/yutuerzf/p/16804646.html

相关文章