# 基础概念
- Epic保管库分为安装到引擎和创建项目两类默认安装到C盘,可以在设置中修改编辑保管库缓存位置
- 打开虚幻商城搜索插件,插件安装后需要在项目中开启才可以使用
- 移动单位为厘米
- UE4还没达到时时渲染
- 导入UE4的3d模型面数不要太多,一般减少20%
- UV贴图需要展开,需要2个贴图通道
- 轴映射针对持续性的动作
# 界面介绍
# 视口操作
- 按住鼠标右键的同时,可以操作W(靠近)、S(远离)、A(左移)、D(右移)、Q(上移)、E(下移) 操作视角方向
- 只按Q(选择物体)、W(坐标位置)、E(旋转方向)、R(物体比例) 可以切换调整物体的不同状态
# 镜头移动速度
通过调整摄像机的速度来控制镜头移动速度,数值越大,速度越快
# 内容侧滑菜单
# 点击 "添加" 可以添加:材质、关卡、蓝图类、Niagara系统及其他组件
# 点击 "内容过滤器"(倒三角)可以显示:材质、关卡、蓝图类、Niagara系统及其他组件
# 游戏模式
每一个世界(World)有多个 Level(关卡),而每个关卡又可以设定自己的 GameMode(游戏模式),从而控制游戏的玩法。
GameMode就是GamePlay框架的具体应用,只要更换游戏模式,下面的几个类都会随之更换:
- 如果第一人称游戏,那这个模式的Pawn类有骨骼、网格体、摄像机
- 比如我择的射击游戏模式,那这个模式的Pawn类有射击的功能
- 比如我选择了一个飞行游戏模式,那这个模式的Pawn类有飞行的功能
默认pawn类 # 棋子,可被PlayController操控的功能
HUD类 # 所有显示UI的管理器,UI的生命周期和创建都是在HUD中进行的
玩家控制器类 # 用于控制Pawn或玩家
游戏状态类 # 记录整体游戏的运行状态,跟玩家无关,如得分、排行榜、拍卖行等状态值
玩家状态类 # 记录玩家个人在当前游戏的运行状态
旁观者类 # 比如王者荣耀观战
# 天空的调整
# 天空在 "内容" 后面的 "设置" 里勾选 "显示引擎" 内容,然后搜索 "sky"
# 在天空的颜色调整的很黑时,却依然显示蓝色,此时需要在视口左上角 "光源" 中关闭 "游戏设置"
# 增加控件 天空光照 "SkyLight" ,调整天空颜色后,天空光照颜色需要在属性中点击 "重捕获"
# 蓝图使用
# 蓝图快捷键
F7 # 编译蓝图
C + 选中蓝图节点 # 快速进行注释
F9 + 选中蓝图节点 # 加或取消调试断点
Alt + 鼠标左键点击流程线 # 取消连接线
Alt + S # 以仿真模式运行游戏
Alt + 变量 # 设置setter
Ctl + 变量 # 设置getter
注意
- 节点中的 target,可以直接从场景中拖入到蓝图
- 改变物体位置时,需要先将其设置为"可移动"
# 蓝图变量
- 局部变量,每次事件后值不会发生改变
# 蓝图事件
Event BeginPlay # 游戏开始事件,默认
Event Tick # 循环打印事件,默认
Custom Event # 自定义事件
# 常用节点
Format Text # 构建格式化字符串,hello {name1} and {name2}
ForLoop # 按起止循环
WhileLoop # 条件循环
Condition # 条件判断,输入 if 选择 Branch
Switch # 条件选择,选择 "工具 -> 流程控制"
FlipFlop # 在A和B输出之间交替执行
Sequence # 先后执行多个任务(流程控制中)
Delay # 延迟多久执行
Lerp # 在A与B之间进行线性插值,Alpha=0时,A为100%,Alpha=1时,B为100%
# 射线检测
射线检测相关函数命名规则如下:
(前缀:Multi) + 射线形状 + [后缀:ForObjects|ByChannel|ByProfile]
# Multi(前缀):通常射线在碰到第一个对象就会失效,Multi 前缀可以使射线穿透多个对象
# 射线形状:分为线形、球形、立方体、脚囊体等多个类型
# 筛选方式(后缀):
# ForObjects:按照一个类类型来进行检测,包括制定的类型的所有子类
# ByChannel:将物体和射线都指定到某一个通道来进行过滤,有 Ignore/Overlap/Block 几种选择
# ByProfile:使一个射线的响应方式完全照搬一套预设
常用方法 →