5个基本数据类型
UE4蓝图中基本数据类型只有5个,需要注意的是蓝图中没有char、double、short、long等数据类型,在C++与蓝图的配合使用时需要注意这些类型的变量。
Boolean
Byte
8位,一字节,0-255。
Integer
32位整型,四字节。
Integer64
64位整型,八字节,能存储更大的数。
Float
32位单精度浮点型,其中1符号位、8指数位、23数值位,UE4中默认保留小数点后6位。UE4中只有Float类型没有Double类型。
————————————————
3种字符串
String
蓝图中String类型就是蓝图C++中的FString类型,普通字符串,可以对其中的字符进行增删查改。
Name
Name是一种固定字符串类型,变量初始化以后不能在对其中的内容进行修改,且Name类型的字符串不区分大小写,多用于作为全局变量来唯一标识对象。Name类型的字符串在运行过程中存储于内存的字符串表中,使用效率高。
Text
Text是String的长度加强版,通常用于存储一段文字并可以进行国际化处理。
————————————————
Vector(向量)
默认创建的Vector是Vector 3D,即三维量,包含x、y、z三个值,可以表示任何任何三维量,如:三维坐标和RGB等。
Rotator(三维旋转量)
包含:
x:roll,翻滚角,以x为轴,进行yz平面的旋转;
y:pitch,俯仰角,以y为轴,进行xz平面的旋转;
z:yaw,航向角,以z为轴,进行xy平面的旋转。
Transform
Transfrom类型是一个3*3的矩阵,包含Location、Rotation和Scale三个三维向量。
常用语句
Branch(if条件判断)
传入一个bool值,进行分流,通常和比较组件配合使用,如:“==”、“>”等。
Switch
Selection:case判断的变量;
Default:默认执行分支;
Add pin:添加执行分支
For Loop(for循环) 和 For Loop whit Break(可跳出的for循环)
First Index/Last Index:提供循环的次数;
Loop Body:循环体执行分支;
Index:返回当前循环索引;
Conpleted:循环完毕后执行分支。
While Loop(while循环)、For Each Loop(数组遍历) 、 For Each Loop with Break(可跳出的数组遍历)、Reverse for Each Loop(反向数组遍历)
专门有用遍历数组的循环。
Array:需要遍历的数组;
Loop Body:循环体分支;
Array Element:遍历的数组元素;
Array Index:当前索引;
Completed:遍历结束执行分支。
流程控制语句
1、Delay
Delay节点用于延迟指定的时间.左下角的数值代表着延迟的时间.单位为秒.
2.Retriggerable Delay
从名字上可以看出,它和Delay节点非常的相似,它也是用来延迟一定时间的,但是它和Delay不同的地方在于:Delay多次执行,也就是连续按下Q时,会一直输出,而Retriggerable Delay被第二次执行时,它会重新计时.也就是说当第一次按下W时,开始计时,3秒后会打印.但当我们在3秒内再次按下W后,就重新计时了.也就是说,再过3秒才会打印,之前的计时被取消了.
3.Do N
Do N这个节点,挺有意思的,按下Q键后,执行Do N这个节点.左边的N代表执行的次数.这里表示一共可以执行5次,右上角的按钮连接的是将要执行的节点.这里是要打印字符串,而右下角的值表示Do N节点被执行的次数
4.DoOnce
DoOnce和DO N类似,只不过把N设置为了1而已.还有一个不同的地方:左下角的
StartClosed的bool值表示刚开始是否关闭.如果关闭则按下Q,不会进行打印.
5.DoOnce MulitInput
这个节点从名字上来看,就是只执行一次就需要重置的,节点左边的Reset in用于重置,节点右边的Reset Out用来执行重置后的节点.也就是执行重置后的一些后续工作.相比于DoOnce,它可以有选择的执行多种情况,你按下Q,则执行A节点,按下W,则执行B节点,但不管执行哪个节点,执行后由于次数用完了,你必须要重置,才能再一次执行某一节点.
6.Gate
Gate这个节点相当于一扇门.Enter表示进门,Open表示打开门,Close表示关上门,Toggle表示切换门的状态,如果门是开的,则关上,反之亦然.Exit用来执行进门之后的操作.左下角的StartClosed这个bool值用来表示刚开始门的状态,是否是关闭的.
7.MultiGate
MultiGate节点可以看作好几扇门.但是默认每扇门只能开一次.StartIndex表示第一次执行必定先打开的门,这里是1,也就是必定先打印1.IsRandom这个值表示,是否随机开门,当然已经开过的门,就不能在打开了.Loop这里表示是否能够一直循环的开门.
8.Sequence
Sequence节点可以说非常的重要.可以说它是个用来并行的节点,但是底层的代码却是串行的.这是什么意思呢?也就是说,它的节点执行顺序是从上到下的,但是并不是说,只有当节点0执行完后,才会执行节点1.而是同时执行的.