- 博客(15)
- 收藏
- 关注
原创 UE5启用SteamOS流程
确保Steam平台已打开,运行后按下shift+Tab即可调用steam。打开项目根目录/Config/DefaultEngine.ini文件。1、在UE里安装OnlineSubsystemSteam。2、设置默认开始地图。复制并粘贴到该文件中。
2024-03-31 19:38:41
449
原创 UE5 基于UMG的UI基类和Manager
最近发现为数不多的UI框架代码,基本逻辑跟Unity的其实差不多,都是通过UIManager来管理UI的显示和退出。Unreal的UIManager继承自AActor,并且需要提供蓝图调用的接口。3、Unity的UIManager不继承MonoBehaviour。1、Unity的UI实例一般使用Dictionary来存取。2、Unity面板基类继承自MonoBehaviour。Unreal的面板基类继承自UUserWidget。Unreal则使用Map。
2024-03-20 16:26:40
162
原创 角色攻击动画(武器碰撞生效的时机)
2、打开蓝图类之后,重写Received Notify Begin 和 Received Notify End函数。AnimNotifyState可以在动画播放中间Tick的时候或播放结束的时候调用指定的逻辑。3、在蒙太奇动画中新增一个Notify轨道,并添加上面新建的AnimNotifyState。编译运行,可以看到不攻击时武器触碰到敌人不会触发碰撞,只在播放攻击动画时才会触发。2、在对应的动画蓝图中添加Notifies节点对应的事件逻辑。1、在角色的蒙太奇攻击动画中的Notifies中添加节点。
2024-03-17 22:57:29
362
原创 资源处理(给角色模型的武器部分添加碰撞)
注意:这里的Collision Enabled设置为Query Only(仅查询),是因为接下来碰撞生效时只打印信息,项目中可根据具体情况改成其他模式。2、设置敌人的Capsule Component和Mesh的碰撞通道忽略Camera。1、可以看到玩家角色身上的SpringArm的碰撞通道是Camera。给角色模型的武器添加碰撞,角色基类有两个子类:玩家和敌人。3、设置碰撞体的Transform。5、设置碰撞通道只对Pawn有用。2、设置碰撞体的骨骼插槽。4、设置碰撞体的范围。
2024-03-17 18:22:47
384
原创 Gameplay Ability System(给角色添加属性)
注意:FGameplayAttributeData类型在概述里Attribute有讲过,提供BaseValue与CurrentValue。编译之后可在角色蓝图里看到生成了属性的结构体。
2024-03-17 16:39:04
371
原创 Gameplay Ability System(普攻间隔/冷却)
创建好普攻冷却的蓝图后,可在普攻蓝图的Cooldown中选中刚刚创建的GE_PlayerAttack_Cooldown。关闭GE_PlayerAttack_Cooldown后重新打开可看到下图的面板,我们只需要研究这个面板里的参数即可。1、当Cooldown这个Gameplay Effect生效时,会在Tags里贴上一个Cooldown标签。2、当再次生效时(即在普攻间隔时再次攻击)会检查Tags里有没有已经存在的Cooldown标签。3、如果已经有了Cooldown标签就不再进行普攻,否则执行普攻。
2024-03-17 15:15:19
387
原创 Gameplay Ability System(普通攻击能力)
5、注意继承自BP_TestBasePlayerController蓝图类的BP_TestPlayer类中的BeginPlay事件要调用父类的BeginPlay事件。3、在角色蓝图BP_TestBaseCharacter里编写逻辑,选择创建好的GAB_PlayerAttack能力蓝图。1、在UE里新建C++,路径填写新的文件夹名来在C++Classes目录下同时创建新的文件夹。4、在BP_TestPlayerController蓝图类中编写点击鼠标左键调用普攻的逻辑。2、激活能力时打印测试。
2024-03-16 19:45:24
356
原创 Gameplay Abilitie System(使角色获得能力)
1、在VS里打开自定义Character脚本,引入头文件,使其继承IAbilitySystemInterface接口。注:FGameplayAbilitySpec其实是个结构体,可以查看其源码发现有很多初始化构造函数,包括能力等级等等。编译完成后创建C++的蓝图类,会发现多出来个Ability System Component组件。2、实现接口的GetAbilitySystemComponent方法,并声明其返回值类型的变量。
2024-03-16 16:36:51
383
原创 Gameplay Ability System(安装插件)
4、关闭引擎和VS,在项目目录里删除以下文件夹,最好只保留。1、在UE里安装Gameplay Abilities。2、在VS里打开xxx.Build.cs文件。和.uproject文件。
2024-03-16 15:43:55
342
原创 Gameplay Ability System概述
2、可查找(父子关系的层级查找)、可叠加(比如游戏中某种暴击效果:普攻4次必定暴击或者是站在火焰上有叠加烧伤效果)1)基于等级的可消耗资源并带有冷却的角色能力(GameplayAbility)1、为了执行随时间推移而发生的动作所提供的异步操作(比如等待动画播放完成)2)对Actor所拥有的数值型属性的操控(AttributeSet)2、要使用GAS的Actor必须有一个为其服务的ASC来管理相关一切。1)即,不推荐直接做:基本输入操作、界面交互操作、商城购买操作等。可消耗资源,进行冷却,执行逻辑。
2024-03-13 15:47:01
938
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人