UE4入门级蓝图学习笔记整理

初学者基础

开关门

学习到的新结点及遇到的一些问题:

时间轴 :时间为变量的输出一个/多个数值的有迹可循的函数图

Gate 像门一样。只有当门是Open状态才会执行Exit后面的代码。Open开门;Close关门;Toggle开门和关门交替

FlipFlop开关节点,反复执行,这个节点就简化了某些场合下使用Branch节点的麻烦。具体功能是第一次通过时执行A,第二次通过时执行B,循环往复

获取钥匙与开关门

门蓝图

钥匙蓝图

学习到的新结点及遇到的一些问题:

分支(Branch(if条件判断)) 与C++中if用法一致

获取类所有的actor 左下搜索选择获取的类,右输出该类所有的对象到数组中.

销毁组件

简单地图关卡

触发道具蓝图

关卡事件蓝图

学习到的新结点及遇到的一些问题:

For Each Loop with Break(可跳出的数组遍历)

Array:需要遍历的数组;

Loop Body:循环体分支;

Array Element:遍历的数组元素;

Array Index:当前索引;

Completed:遍历结束执行分支。

执行控制台命令

蓝图通信模块笔记

加速带蓝图

学习到的新结点及遇到的一些问题:

调用自定义事件

cast类型转换

大多数情况是使用在人物身上有一个collision,然后当控制的人物触发了时,通过cast节点来改变碰到的actor中的某一变量。

场景中控制某一物体

学习到的新结点及遇到的一些问题:

Is Valid(转换/获取的变量是否有效)判断产生分支

给小白人添加冲刺和瞬移功能

蓝图基本逻辑

获取左Shift按下的次数,长按加速,连续点击两次或以上触发瞬移

瞬移原理

获取当前角色绝对位置(三维向量),获取当前角色朝向(三维单位向量)*500,相加得到瞬移后的位置,赋值给角色位置。

学习到的新结点及遇到的一些问题

运算符结点>=,++,+,*等与c++使用一致

延迟结点 程序运行到时在当前处停滞设置时间/帧数

插值结点 由A改为B,alpha连时间轴设置变化的过程

两插值结点使用同一个时间轴,确保瞬移与镜头拉伸相匹配

设置actor位置 Sweep勾选表示判断位移途中是否有障碍物阻拦,如果有,则不进行瞬移(简单理解为能否穿墙)

不同控制器切换

上下车功能蓝图

上车 蓝图基本逻辑

按F创建/获取一个变量的引用,判断是否有效后传入自定义事件

触发碰撞盒子后类型转换为ThirdPersonCharacter,获取玩家控制器,使用控制结点切换控制权

创建一个用于提供坐标位置的组件Up,讲小白人附加在汽车上(小白人关闭碰撞)

学习到的新结点及遇到的一些问题

拆分变换 将获取到的场景变换拆分为位置,朝向,缩放,一般不使用缩放

提升为变量(SET)

控制结点

附加前设置小白人碰撞关闭

附加到组件 三变量都要设置为相对场景

下车 蓝图基本逻辑

创建一个用于下车提供坐标位置的组件Down,人车分离,分离后位置设置,开启小白人碰撞(set actor clltion,运镜混合,控制权切换。

学习到的新结点及遇到的一些问题

Is Valid判断当前是否正在开车

detach(从actor分离) 设置三变量为相对场景

Down变量 获取场景变换拆分,Rotation分割引脚,取Z值,原因是防止分离后小白人倾斜

使用混合设置视图目标 获取当前控制器与小白人控制器混合,混合事件要与延迟时间相同

Pawn变量修改 与控制结点要的变量吻合

下车制动减速

蓝图基本逻辑

下车开启手刹,同时创建一个变量用于判断是否下车,防止下车时汽车控制器持续输入油门

猜你喜欢

转载自blog.csdn.net/xx_xb/article/details/128819639