本来是蓝图开发的项目,需要用C++整合插件,看到B站一位up主的转换教程后,添加C++ Class类时提示编译失败,关掉项目重开就发生了modules are missing/version has changed的报错并且再也打不开了。
蓝图转C++教程:
【虚幻】将你的蓝图项目升级为C++项目-弗夏Jay
有看到一位uu同样问题的分享:
UE4纯蓝图添加C++遇到的一个坑
,但我的项目还没有生成.nls所以根本打不开代码工程去删除module字段。
解决方法:貌似是缺少依赖造成的,直接更新了VS2022的.net支持,勾上了游戏开发等等,然后重新编译就成功了(具体到底是缺了哪个没细看日志,总之干脆全装了.jpg)
ue4和
ue5
如果一开始选择了
蓝图
工程,在后期如何转换为
c++
工程。这样子,ue引擎就会将
c++
项目
需要的东西加载到你的
项目
中去。然后,你就能看见你新建的
c++
类,你可以选择删除,或者继续。然后,我们要如何将
蓝图
工程,转换为
c++
工程。里面有简单的在ue创建
c++
的运用。详情创建可以看作者之前写的。
以上就是使用
C++
实现
蓝图
节点的详细流程,
蓝图
转
C++
需要掌握的很重要的一点就是读懂
C++
函数的注释和参数列表说明,这点掌握了,就能大体知道如何调用
C++
函数来实现功能 作者:埃罗芒阿Sensal https://www.bilibili.com/read/cv9245730/ 出处:bilibili。(2)ActorsClass:想要获得的Actor的类型,该参数需要输入一个类型,我们在这假设想要获取关卡中所有的Pawn,那我们在这传入APawn::StaticClass().
不同名的CPP变量,不用加 "_C",因为只有 variables for config 才需要暴露到
蓝图
, 内部变量和计算变量不需要暴露。3.4 Collapse Nodes 一旦创建,
无法
在 "My Blueprint Window"中调整顺序,提前创建一大堆,按需改名。5.3 更复杂,有些炫技成分,并且新的override链也会形成一套额外的记忆负担。修改
蓝图
函数名,保留CPP函数名,会有编译错误来发现所有需要修改的地方。原则:保持
蓝图
中的
蓝图
接口,转发给C实现的接口。
新手看着别人的
蓝图
教程,自己转
C++
时候,会发现这里VARIABLES
无法
转换为在
C++
代码,是因为这里是全局变量,而
C++
类内定义的不是全局变量,这里可以直接在代码里获取全局变量,比如说这句。关于函数内的参数,可以通过Rider编译器查看:右键函数名,点击[查找用法]或者[前往声明或用法]这个UWidgetBlueprientLibrary可以通过鼠标悬停在
蓝图
上查看。可以看到 Target is Widget Blueprint Library这句话。