1.变量
所谓变量,就是保存了各种值的“器皿”,它可以存放一个值或引用世界中的一个Object或Actor的属性。在编程中,会根据需要将各种计算的结果或部件的设定值等,拿来进行处理操作。为此,需要事先将必要的值保存在某个地方,这就是变量的作用。
变量也有类型之分,创建变量的时候就指定了该变量所保存的值的类型。
01.创建变量
变量是由位于蓝图编辑器左侧的“我的蓝图”管理的。这里有“变量”项目。其右端显示着“+”号,是用于添加变量的。单击“+”号后,在“我的蓝图”中“变量”的下方添加了名为“NewVar_0”的项目。这就是新生成的变量。NewVar_0是默认的变量名称,可以重新设置变量的名称。
右侧的细节面板中,显示了新建变量的详细内容设置。
02.变量的细节面板
在变量的细节面板中,各个设置的含义。
变量名称:在“我的蓝图”中使用的就是变量名称,如果这里修改为新的名称,在蓝图中的名称也会发生变化。
变量类型:决定了所保管的值的类型。这是个下拉菜单,可以在这里选择变量的类型。
可编辑:规定了是否可以编辑该变量。不是单纯地修改值,而是表示“是否可以公开编辑该变量”,它是为了在公开的蓝图实例上能够处理变量。
工具提示:设置当鼠标指针悬停到该变量上时,显示该变量的工具提示信息。
在生成时显示:设置生成此蓝图时,是否让此变量显示为引脚。
私有:限制所有外部访问的属性。
显示到Matinee:控制这个变量是否要暴露给Matinee以进行修改。
分类:指定变量的类别。可以整理很多变量。
复制:规定是否应该通过网络复制这个变量。
默认值:位于最下方的是该变量默认的初始值。可事先在这里设置刚开始使用变量时的数值。这部分的显示,会根据变量的类型而变化。
03.使用变量&设置变量
现在细节面板中给变量设置一个默认值this is a message。并编译。
在蓝图中使用变量。
如果要使用变量的值,将变量拖拽到事件图表中,选择“获取”。
如果要给这个变量设置值,选择“设置”。
我们获取变量并先打印变量的默认值。然后再设置该变量的值为new value。然后再将设置后的值打印输出。
2.数组
如果需要保管大量相同类型的数据时,需要用到数组。数组是能统一保存若干数值的特殊类型。数组中有很多保管库用来存储值,每个保管库分别有不同的编号。就像“3号保管这个”,“取出7号的值”等,可以指定编号、运用其中的值,所以能够有序的管理大量数据。
01.创建数组
我们将之前创建的变量msg,修改为字符串类型的数组。只需要在变量类型右侧切换成9宫格图案的图标即可。
新建的数组中没有保管任何值,这并不是没有值,而是连保管值的“仓库”都没有。使用数组需要事先确保有保管值的场所,即初始化数组的长度。当然,也可以通过程序后续增减数组元素,长度也会随之变化。
初始化数组长度,点击细节面板中默认值右侧的“+”号。这里我们添加四个元素,并设置默认值。数组的下标是从0开始的。
02.给数组设置值
通过Set Array Elem(设置阵列元素)节点实现。右击事件图表找到该节点添加到事件图表这中。该节点有四个输入引脚,含义如下:
Target Array | 用于连接设置值的数组 |
Index | 用于规定设置项目的编号,这里可以指定编号的值。即数组下标 |
Item | 用于连接设置的值。将于Item连接的值保存在Index指定的编号中 |
Size to Fit | 如果有项目未使用,就删除掉,负责整理保留使用的项目 |
我们可以吧数组中的“香蕉”修改成“梨”,“香蕉”在数组中的下标位置为2。
首先,将数组变量拖拽到事件图表选择“获取”。然后新建一个字符串内容是“梨”,设置Index为2。将数组变量与Target Array相连接。字符串“梨”与Item连接。
03.获取数组中的元素
通过数组下面的Get节点。将刚才设置的“梨”从数组中取出来,并打印。
04.数组末尾追加一个元素
数组是有序,那么我们新增加一个数组元素,就会默认追加到末尾。通过数组下面的ADD节点可以为数组添加一个新的元素。
下面我们为数组在追加一个“哈密瓜”。
05.移除一个数组元素
通过数组下的Remove Index节点可以移除数组中指定Index位置的值。那我们把“樱桃”移除。“樱桃”的Index为3。
那么经过对数组的这一番操作,数组现在是什么样子,你是否心中有数了呢?
应该是这个样子:
是否和你的预期一样呢。
其实我们可以通过forEachLoop节点打印出数组中的每个元素。不过,这个涉及到蓝图中的流程控制节点,我们以后再学习。