一、什么是GAS
1、GAS全称叫GameplayAbilitySystem,是由Epic Games官方为UE4开发的技能系统,后来集成到插件里。
2、GAS成功的案例有堡垒之夜
3、GAS在单机或多人游戏中提供了开箱即用的:
1)基于等级的可消耗资源并带有冷却的角色能力(GameplayAbility)
2)对Actor所拥有的数值型属性的操控(AttributeSet)
3)对Actor施加状态效果(GameplayEffect)
4)对Actor添加游戏标签(GameplayTag)
5)生成粒子特效与音效(GameplayCue)
6)*在网络中复制上述内容
7)*一定程度上的预测能力
二、什么是ASC
1、ASC全称叫AbilitySystemComponent,是GAS中协调一切的核心,是一个SceneComponent。
2、要使用GAS的Actor必须有一个为其服务的ASC来管理相关一切
3、实际 添加/表现 ASC的Actor称为OwnerActor/AvatarActor
1)OwnerActor与AvatarActor根据需求可以相同也可以不同
2)单机:玩家与AI的OwnerActor与AvatarActor均为Character
3)多人:
玩家:OwnerActor是PlayerState(可以进行网络同步复制),AvatarActor是Character
AI:OwnerActor与AvatarActor均为Character
三、Attribute
1、由特殊结构体包装的浮点数
2、用来存放与游戏性相关的数值(攻击力、防御力等)
3、提供BaseValue与CurrentValue
1)BaseValue:永久值
2)CurrentValue:临时修改
四、AttributeSet
1、存放Attribute
2、对其中存放的Attribute进行管