ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)

一、因为作者vs更新原因,作者用的是vs2022和ue5进行展示,ue4的也可以正常使用。

        首先是最开始的创建项目,用c++模式进行创建。

        ue4:ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第1张图片

        ue5:ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第2张图片

 创建之后,两个都会自动为你打开vs,不过ue4.26要的是vs2019,ue5要的是vs2022,有时候打不开是缺少一些东西,这些东西在csdn里面可以查到,作者就不细讲了。

在ue5(4是一样的)中,我们可以看见,除了content以外,多了一个c++类,而这个类在,双击打开它,可以在vs里面看见他的头文件和cpp文件。

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第3张图片

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第4张图片

 进入头文件,我们可以看见:ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第5张图片

 学过c++的我们都应该知道这个是什么意思,我创建的myBall继承了游戏模式的类

而为什么他们的前面有一个A呢?这是因为随着他们向上追溯,可以追随到ue引擎的几个大类,我们并不需要在意,因为在ue引擎中一些其他的函数前面也会有不同的大写字母,如U等等。

二、看看蓝图类创建和c++类创建有什么不同

我在content创建一个蓝图(不是继承的),在c++里面创建一个类

我们可以发现函数其实是一一对应的:

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第6张图片

 不过图片左边第一个是构造函数,它的位置其实对应的是蓝图中的这个:

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第7张图片

 三、了解不同之后,我们需要了解ue中最为重要的一个键,编译(不知道叫什么,我一直叫他热编译)

在ue4中,它是这个样子的:

 在ue5中,它在右下角小小一个(像俄罗斯方块的这个,当时找这个找了半个小时):

 这是ue引擎最为特殊的工具,只要你按一下,引擎就会对vs里面的代码编译到里面来,而不需要开关开关好几次。

四、接下来,我们可以开始创建属于我们的蓝图了。

首先在我们的vs2022中的头文件,构造函数里面创建函数:

创建了intputText()这个函数,我在上面写了一个UFUNCTION,U是Uobject的意思,是虚幻引擎的一个大类名称,即上面讲的大写字母,function,顾名思义。

BlueprintCallable的意思,分开就知道了,是可以调用的蓝图

在后面我们还可以加上Category,进行蓝图的分类,如下图所示:

记住,上面的UFUNCTION后面是没有 “ ; ” 的

UF是为了查找使用的,同样的还要UP等等,查找完毕后,记得将UF去掉

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第8张图片

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第9张图片

 创建之后,自然是声明和定义,到cpp文件里面,然后放到主函数里面进行实现:

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第10张图片

 之后记得保存后到ue里面进行编译(UF一定要去掉,一定要记得保存),如果没有保存,在热编译的时候,可能会说你哪里没有 “,” 这是最让人懵逼的,我一开始就中招了好几次,找不到问题。

之后我们在content创建继承你c++类的蓝图后,在里面就可以看见:

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第11张图片

 你自己创建的蓝图。

五、你们可能发现作者创建自己蓝图的图片箭头上面有其他函数,那是之前测试的时候写上去的

ue4/5蓝图与c++混用基础入门的基础操作(适合有蓝图基础和c++基础的新手,创建自己的蓝图)_第12张图片

意思是一个可以在任何地方看见,但只读,种类为proJect的浮点型A=0;

你可能感兴趣的:(#,ue4/5蓝图混合c++,ue4,开发语言,c++)