UE4蓝图笔记
本篇文章给大家总结了一些在学习UE4虚幻引擎中的蓝图笔记,分享给大家,希望能帮到那些刚入门蓝图的初学者。
流程控制:
Delay:延迟执行
RetriggerableDelay:事件行为设置时间内再触发会从头统计Delay时间。
Branch:if...else
DoOnce:执行一次
DoN:执行N次
DoOnce MultyInput:多项执行一次
FlipFlop:交替执行
Gate:执行由开关决定
MultyGate:依次或随机执行多个结果
Sequence:同时执行多个结果
来自:http://blog.csdn.net/libido0220/article/details/68262310
数组(以下命令从数组中拖出):
Length:打印数组长度
Get:获得数组里的某个索引值
Set Array Element:设置数组里的某个索引值
Add :动态增加数组索引并为其赋值
AddUnique:新增索引并添加不重复的值,值重复则不添加
Insert:动态插入索引并为其赋值
第一个值:赋值;第二个值:插入(n-1)位置
RemoveIndex:移除某个索引
RemoveItem:移除相同值的索引
FindItem:通过查找赋值返回索引
ContainsItem:检查数组中有无某值,返回布尔值
LastIndex:返回数组中最后一个索引
Resize:重新分配数组长度
Clear:清空数组索引
ForEachLoop:遍历
ForEachLoopBreak:遍历至特定值就结束
Shuffle:打乱数组与索引的赋值
结构体:
结构体数组:新建结构体A,在蓝图的某个变量中选择该结构体A,.并使其变成数组。
二维结构体数组:新建结构体B,在结构体B的设置面板,把第一个变量设置为已创建的结构体A。
三维结构体数组:只要把包含B结构体的变量变为数组就是三维了。
BreakStruct:拆分结构体
MakeStruct:设置结构体里各元素的值
SetMembersInStruct:同上,需打开要设置的元素
Add:添加结构体。改变某个值以后,执行时自动添加。
SetArrayElement:替换某个元素里面的值
AppendArray:两个数组相加。表现在第一个相连的数组上。
调用自定义事件
方法1:直接查找事件名称触发
方法2:使用控制台Console Command,输入ce空格+事件名称
信息交互
1.自定义蓝图类默认是不接收键盘事件的。接收需在该蓝图类设置Input项中将Auto Receive Input调为Player 0
2.关卡蓝图不能调用蓝图类中的信息
蓝图类引用关卡中的对象
1.蓝图类必须实例化(在场景中)
2.创建变量,把变量类型改为要引用的物体类型
3.把变量改为公有变量
4.编译后,在蓝图类的Details菜单下出现该变量后,指定要引用的对象
蓝图类之间的信息交互,方法同上。
通过中间变量进行信息交互
蓝图类之间互相调用时,某个调用或者被调用的类不一定出现在场景中,会导致调用不了。
此时需通过调用一个一直存在于场景的物体作为中间变量(一般为主角),通过该变量来调用蓝图类。
1.在角色蓝图中创建公有变量,并将其指定为要被调用的蓝图类。
2.在要调用该变量的蓝图中获取中间变量(主角)的父类:Get Player Pawn,并转化成子类:Cast To ThirdPersonCharacter,
这时才能引用到要被调用的蓝图类。
Get All Actors Of Class:遍历搜索相同类型的某个Actors
蓝图类和关卡蓝图的信息交互
发报机:触发多个事件。
接口
1.创建接口后,要在蓝图调用接口事件需先编译,否则找不到。
-----
2.先在母事件处判断是否已经实现接口,如果实现,将其强行转换为该接口,并调用接口函数。
此处演示功能为鼠标拾取物体,在与物体碰撞后的检测结果。
Does implement Interface:检测接口是否被调用。
3.上一步设置好后,在调用接口蓝图中就可通过接口事件实现不同的功能。
计算:
Sqrt:开平方
Lerp:差值(A-B)
CompareFloat:差值比较
Random Float in Range:随机值
Set Active:设置开
Deactivate:设置关
Destroy Actor:销毁Actor
Destroy Component:销毁Actor中的某个组件
Set Visibility:可设置灯光开关
Get Actor Location:获取引用物体位置
Get Actor Rotation:获取引用物体旋转值
Get Actor Scale 3D:获取引用物体缩放值
Set Actor Location:设置引用物体位置 -- sweep:扫描移动路径上的位置并被阻挡
Set Actor Rotation:设置引用物体旋转值
Set Actor Scale3D:设置引用物体缩放值
Set Actor Transform:设置三值
Set Actor Relative Transform:设置相对三值
Set Actor Hidden In Game:隐藏Actor
Add Actor Local Offset:添加本地偏移
Add Actor World Offset:添加世界偏移
Add Actor Local Rotation:添加本地旋转
Add Actor World Rotation:添加世界旋转
Add Actor Local Transform:添加三值本地
Add Actor World Transform:添加三值世界
Draw Debug Point:绘制点(生成在物体中心位置)
Draw Debug Line:绘制线
Draw Debug Sphere:绘制球模型
Line Trace by Channel:画一条射线
Get Control Rotation:获得当前控制器(角色)的方向
Get Forward Vector:获得前方向
Get Socket Location:获取socket的位置。socke插入骨骼后,要在蓝图中调用引用该骨骼的mesh,再get。
Get Socket Transform
Attach To Component:将目标物体绑定到组件
Attach To Actor:将目标物体绑定到actor
Get World Delta Seconds:获得世界每秒时间
Play Animation:播放指定动画
Spawn Actor From Class:从Class当中生成Actor
Spawn Emitter at Location:生成粒子
Create Dynamic Material Instance:创建动态材质
Set Scalar Parameter Value:设置动态材质里的Parameter值
Set Color Parameter:设置动态粒子颜色
Set Float Parameter:设置粒子某个浮点值
Set Material Parameter:设置粒子材质
Set Vector Parameter:设置粒子向量
Apply Damage:造成伤害
Event Any Damage:接收伤害
减血机制:
HitResult:扫描碰撞的结果。
Blocking Hit:如果被阻挡,返回xx
Initial Overlap:
Time:标识物体在移动路径哪一段被阻挡(0-1)
Location:被阻挡后设定的新位置
Impact Point:碰撞点(被碰撞的三角面)可用于子弹打到身上飙血
Normal:碰撞时的法线
Impact Normal:碰撞时的法线朝向飙血的方向
Phys Mat:物理材质
Hit Actor:返回阻挡物体
Hit Component:碰撞到组件中的哪个部分
Hit Bone Name:碰撞到哪根骨骼
Hit Item:碰撞到模型的哪个三角形(三角形在模型里的索引号)
Face Index:
Trace Start:
Trace End:
TimeLine:双击后进入编辑界面。按住shift打关键帧。右键转曲线。
Line Trace by Channel:画一条射线
Get Control Rotation:获得当前控制器(角色)的方向
Get Forward Vector:获得前方向
Get Socket Location:获取socket的位置。socke插入骨骼后,要在蓝图中调用引用该骨骼的mesh,再get。
Get World Delta Seconds:获得世界每秒时间