UE4蓝图:初体验(5)函数

时间:2024-03-22 15:38:55

在编程中使用函数,可以让代码的结构更加模块化,减少代码的复用程度,基本上一个函数就是一个单一的功能.这样看上去更直观.

而在蓝图中,即使它是可视化的编程,但蓝图是由节点构成的,每一个节点只是单一的功能,由这样的节点去连接成一些逻辑链,这样的是相当复杂的,因为节点非常的多,所以蓝图中也有函数这样的模块,用函数去包装一些单一的功能,让蓝图更加的简洁,易读.

首先进入到关卡蓝图中,点击Functions后面的添加按钮,添加一个函数,用来判断是否是偶数.我们可以看到Detail面板中,最后有两个很关键的项,Inputs和Outputs.分别为输入和输出.Inputs下的变量实际上就是函数的形参,而Outputs下的变量 则是这个函数节点可以返回的一些值.也就是返回值.这里就比较出C++和蓝图之间的一些区别了.C++中函数的返回值最多只有一个,而蓝图中的函数节点的返回值,只要你愿意,你可以返回n个.

由于我们这里的函数只是对一个值是否是偶数的判断,所以只需要返回一个bool值即可.

UE4蓝图:初体验(5)函数

首先我们很容易的添加了一些节点来完成,对是否为偶数做出了判断.我们可以看到圈起来的地方多了个局部变量的顶点,然后我们点击Event Graph标签,可以发现并没有局部变量,所以说只有在函数中才能使用局部变量.那到底局部变量和其他的变量有什么区别呢?Variables可以看作是全局变量,在任何节点内都可以使用,而Local Variables局部变量只能在函数体中去实现,只能在函数中使用.

UE4蓝图:初体验(5)函数

接下来让我们实现一个函数,用来求一个整型数组的平均值,其中就用到了局部变量.

首先我们先创建一个函数,然后设置函数的参数和返回值.参数为数组,返回值为float类型.

UE4蓝图:初体验(5)函数

然后创建一个局部变量,用来保存整个数组之和.
UE4蓝图:初体验(5)函数

然后在使用数组的遍历节点,让Sum保存数组之和.求出数组平均数.这里要注意:int/int的值还是int.所以注意在做’/’运算的时候,最好使用float类型.

UE4蓝图:初体验(5)函数

然后在关卡蓝图中创建一个数组变量,设置好初始值,右键输入你刚刚写好的函数节点的名字,然后输出答案.

UE4蓝图:初体验(5)函数

UE4蓝图:初体验(5)函数

函数可以说是程序中非常非常重要的一个模块了,只要函数用的好,条例就会非常的清晰.