【虚幻4踩坑心得】GameplayAbilities使用VS遇到#include错误解决办法

疫情当前,终于在远程办公之余有些微时间研究虚幻4引擎了。正好学习李教授的《虚幻4技能系统介绍》的教程。

由于视频教程非常详尽,前两课内容都能丝毫不差的做到,心菲的行走和左键普攻顺利搞定。但是在第三课第11节近战技能刚开始就遇到了大坑,即在VS里的CharacterBase.h文件里,使用#include导入AbilitySystemInterface.h文件时,居然没有语法提示??更别说后续的public IAbilitySystemInterface添加类了,手动输入后根本就不具备类应有的青色!对C++零基础,只进行过web编码类工作的直觉告诉weindy,这肯定是哪里出问题了。

在网上搜索一番,果不其然,即使是被称作GAS(GameplayAbilities的简称)圣经的Unreal官方wiki详细说明页面上,也没有说明无法导入AbilitySystemInterface.h引起编译报错的问题。

好在视频教程第11节末尾,给出了解决方案,这段说明文字在购买课程后的Q&A页面上,作为下载党的weindy是看不见原文的。根据视频中显示的说法,并参考美国百度reddit上的一篇求助帖子,VS里启用GameplayAbilities的起手顺序应该是:

1、打开项目VS工程,在项目的项目名.Build.cs里添加”GameplayAbilities”,”GameplayTags”,”GameplayTasks”和”AIModule”。

2、关闭Unreal编辑器和VS,浏览windows里的项目文件夹,找到项目名\项目名.upoject文件,右键菜单里选择有U字虚幻图标的Generate Visual Studio project files。

之后就可以顺利的导入AbilitySystemInterface.h和添加IAbilitySystemInterface类了。

根据官网的课程反馈,李教授是一位出色的艺术家,但是对编程却不怎么在行,30%的时间浪费在输错单词字符上。。预感后面的坑应该不会少。不过,按照weindy“在走之前要先学会跑”的学习方法,想要快速掌握虚幻4,就只能先硬磕这类能做出完整案例的高难度课程了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注