【虚幻4】UE4初学者系列教程合集-全中文新手入门教程

# 1 触发器-碰撞盒(collision)
- 1. 又名(触发器/压力板).
- 2. 一共有三种碰撞.----正方形,圆形和圆柱形
<font color = "cyan">蓝图1:</font>当物体进入触发器范围时
![[Pasted image 20230728021754.png|300]]
<font color = "cyan">蓝图2:</font>当物体离开触发器范围时
![[Pasted image 20230728021910.png|300]]
# 2 时间轴(add timeline)
<font color = "cyan">蓝图:</font>用与调整物品移动的函数
![[Pasted image 20230728022016.png|300]]
# 3 设置相对旋转/平移(set relative rotation/location)
<font color = "cyan">蓝图:</font>顾名思义
![[Pasted image 20230728022349.png|300]]
# 4 输入+开关操作(Gate)与高级门(MultiGate)
<font color = "pink">区别</font>:
| 对比项 | Gate | MultiGate | 备注 |
| -------- | ----------- | ------------ | ------------------------------ |
| 输入输出 | 2条件单输出 | 单条件多输出 | Gate得同时满足两个条件才能输出 |
| | | | |
<font color = "cyan">蓝图:</font>gete相应的其实是双重条件,比如玩家进入碰撞盒子触发open,按下F触发Enter,只有open和enter同时触发才会进入Exit节点
- enter来源为“键盘 E”
- 在此之前还得启动输入并获取玩家控制器
![[Pasted image 20230728022647.png|]]
<font color = "cyan">蓝图</font>:反观Multigate是单条件多输出,gate是输入通过后只执行一次,Multigate是输入通过后顺序或随机执行所有引脚,最多32个好像
![[Pasted image 20230802053227.png]]
# 5 分支节点(branch)
<font color = "cyan">蓝图:</font>第一次通过为A,第二次通过为B,循环ABAB
![[Pasted image 20230728023018.png]]
# 6 获取另一个蓝图的变量(get all actors of class)
<font color = "cyan">蓝图:</font>蓝图通信
![[Pasted image 20230728023219.png]]
# 7 销毁物体(Destroy Actor)
<font color = "cyan">蓝图:</font>用来销毁这个蓝图所对应的所有静态网格体,所有
![[Pasted image 20230728023343.png]]
# 8 打印到屏幕(print)
<font color = "cyan">蓝图:</font>可以用来调试
![[Pasted image 20230728023448.png]]
# 9 游戏开始运行(event begin play)
<font color = "cyan">蓝图:</font>用来做一些游戏一开始就要运行的东西
![[Pasted image 20230728023852.png]]
# 10 播放音频(play sound at location)
<font color = "cyan">蓝图:</font>连上begin就可以运行
![[Pasted image 20230728024238.png]]
# 11 激活某个actor(set active)
<font color = "cyan">蓝图:</font>这里是激活摄像机
![[Pasted image 20230731202732.png]]
# 12 模拟物理效果(set simulate physics)
<font color = "cyan">蓝图</font>:
![[Pasted image 20230731212125.png]]
# 13 设置可见性(set visibility)
<font color = "cyan">蓝图</font>:一般用于开关灯,也可以用来瞬间隐藏某些Actor
- 只是隐藏,如果要销毁建议用Destroy actor
![[Pasted image 20230731231323.png|350]]
# 14 文本渲染组件(Text Rander)
<font color = "cyan">蓝图</font>:显示悬空字母
![[Pasted image 20230801224613.png|300]]
# 15 逻辑判断:if 分支(branch)
<font color = "cyan">蓝图</font>:判定condition的对错
![[Pasted image 20230801224847.png]]
# 16 逻辑判断:For-each-Loop循环 和 For-each-Loop with break循环
<font color = "cyan">蓝图</font>:必定会执行完的for循环(无break)
- Exec---执行
- Array---导入一个数组,一般前面要跟上get all actors
- Loop Body---循环体
- Array Element---细化Array中的具体变量,比如Array有3个Actors,但是我想比较每个Actor的a的值,就可以在Element创建引脚
- Completed:就是Finally执行完后的操作
![[Pasted image 20230801225058.png]]
<font color = "cyan">蓝图</font>:带break的for循环
- 其他的没区别,只是多了一个break
- 如果想碰到中断的情况,就直接把引脚拖过来,break的Body不会进入Completed.
![[Pasted image 20230801225615.png]]
# 17 控制台命令(Execute Console Command)
<font color = "cyan">蓝图</font>:可以上报给关卡蓝图,让它执行保存在关卡蓝图里的自定义事件
- 命令为ce+自定义事件(只能是关卡蓝图里的自定义事件)
![[Pasted image 20230801230142.png]]
# 18 延迟节点(delay)
<font color = "cyan">蓝图</font>:顾名思义
![[Pasted image 20230802053502.png]]
# 19 转场效果,视角切换器(set view target with blend)
<font color = "cyan">蓝图</font>:Blend time设置为2就差不多了
- 目标是玩家控制器
- view target是小白人
- 目前来看要搭配Delay使用才行
![[Pasted image 20230803011955.png|400]]
# 20 判断传入对象是否有效(is valid)
<font color = "cyan">蓝图</font>:如果调用的引用没有创建实例则返回invalid
![[Pasted image 20230803012739.png|400]]
# 21 创建一个蓝图对另一个蓝图的引用与实例化(self)
<font color = "cyan">蓝图</font>:接上,我们可以通过在被引用蓝图里构建这个引用的实例来由invalid更改为valid
![[Pasted image 20230803012919.png]]
# 22 控制权(possess)
<font color = "cyan">蓝图</font>:目前来看,貌似只有拥有骨骼网格体和摄像机组件的才能有控制权,比如人,车,小飞船
- 目标是控制器
- pawn是自身
![[Pasted image 20230803013024.png|400]]
# 23 设置Actor变换/获取场景变换/拆分变换(Set Actor Transform/Get World transform/Break transform)
- sweep-换位置的时候会查看变换后位置是否有碰撞体
<font color = "cyan">蓝图</font>:把目标移动到新的坐标和旋转位置
- 目标是小白人
- new transform可以通过以下两个节点来获取,创建一个没有碰撞的碰撞盒子,然后获取它的位置信息,输入到新坐标里就可以
![[Pasted image 20230803013120.png|400]]
# 24 启用Actor碰撞(Set Actor Enable Collision)
<font color = "cyan">蓝图</font>:顾名思义
![[Pasted image 20230803013252.png|400]]
# 25 附加到组件(Attach to Component)
<font color = "cyan">蓝图</font>:将目标锁定到parent的位置
- 目标是小白人
- parent是预设的up主驾驶位置
- 这样小白人就被固定在主驾驶上面了
- 此外要注意,以下的规则要设置为保持场景,不然会出现人物消失不见或者被强制拉伸的特殊情况
![[Pasted image 20230803013318.png|400]]
# 26 从Actor分离(Detach From Actor)
<font color = "cyan">蓝图</font>:反-”附加到组件“的意思
- 解除固定
![[Pasted image 20230803013559.png|400]]
# 27 键盘响应事件(键盘 shift)
<font color = "cyan">蓝图</font>:
- press按下的时候
- release放开的时候
![[Pasted image 20230803085344.png]]
# 28 数字的累加/i++节点(整数+整数/i++)
<font color = "cyan">蓝图</font>:输入++即可出现,或者+选择整数+整数
![[Pasted image 20230803085453.png]]
# 29 数值的判定(>=)
<font color = "cyan">蓝图</font>:输入两个变量进行判定
- 判定:参数1是否大于等于参数2
![[Pasted image 20230803085521.png]]
# 30 插值/向量插值()
<font color = "cyan">蓝图</font>:配合时间轴使用
- 以前是在时间轴里面加0.2s(从0~100)
- 现在用插值就是把以前的方法进行拆分,时间轴负责描绘曲线,插值负责在曲线上加入值的变化,即时间轴给形体0.2s(0~1),插值给数值(0~100)
![[Pasted image 20230803085639.png]]
# 31 获取Actor位置
<font color = "cyan">蓝图</font>:获取当前坐标
![[Pasted image 20230803085900.png]]
# 32 获取Actor向前向量
<font color = "cyan">蓝图</font>:包含(当前方向)+(移动数值)
- 以下图在此基础上加上当前坐标即可完成角色的冲刺
![[Pasted image 20230803085913.png]]
# 33 设置手动制动
<font color = "cyan">蓝图</font>:打开手刹的意思
- 目标是”车辆的移动“
![[Pasted image 20230803090102.png]]
# 34 设置油门输入
<font color = "cyan">蓝图</font>:应该是改变前进加速度的,就是油门
- 目标还是”车辆的移动“
![[Pasted image 20230803090117.png]]
# 35