UE4蓝图笔记

发表于2018-01-17
评论0 4.3k浏览

本篇文章给大家总结了一些在学习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:获得世界每秒时间

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

0个评论