一、蓝图的初步认知
1. 蓝图的概念
2. 蓝图的种类
3. Actor蓝图
4. 输出日志
二、蓝图数据类型与逻辑
1. 强类型语言
强类型与弱类型
总结
2. 数据类型
2.1 蓝图数据类型分类
蓝图基本数据类型的含义及用途:
2.2 声明和初始化
2.3 命名法则
3. 基本运算
3.1 基本运算
3.2 赋值和获取
3.3 整形的自增和自减
3.4 取余运算
4.逻辑判定
4.1 流程控制
4.2 Branch分支
4.3 关系运算符
4.4 逻辑运算符
5.平滑移动小功能
5.1 设置UE5蓝图运行指向箭头
5.2 初始化位置
5.3 距离判断
5.4 位置计算
5.5 移动实现
5.6 移动功能进阶
三、GamePlay框架与项目打包
1. 虚幻设计者的规则
2.GamePlay游戏框架的结构
2.1 GameMode游戏模式
2.2 GameState游戏状态
2.3 DefaultPawn默认角色玩家
2.4 PlayerController玩家控制器
2.5 PlayerState玩家状态
2.6 HUD
3.角色移动以及视角旋转功能制作
3.1 创建对应的gameplay蓝图类
创建自己的GameMode,GameState,DefaultCharacter,HUD,PlayerController在世界场景设置面板中对应的位置上设置,如果创建GameMode时选了GameModeBase,那么后续的gameplay蓝图类要一一对应选Base。
3.2 角色移动与视角旋转功能制作
- 添加一个摄像机组件到角色身上,起到代替眼睛观察的作用
- 在编辑—>项目设置—>输入:1.操作映射,2.轴映射中分别设置按键(轴映射和操作映射的区别就是轴映射的按键按住时会一直起作用)
- 角色基本操作代码:
- 摄像机组件细节面板里的 use pawn control rotation选项勾上
- 类默认值设置中会默认收回摄像机使用控制器的权限
- PlayerController角色移动控制:
4. 项目打包
- UE5打包设置里选项如果前边有感叹号,意味着不能进行该平台的打包,如果是Windows则需要装一个Windows64—desktop—runtime
- 做项目前先打包一下项目,如果能打出包说明资产没有问题,打包前先烘焙一下,检查一下美术场景有无问题
- 项目设置中设置默认游戏地图
四、时间轴、触发器与事件分发器(事件调度器)
1. 时间轴
- 时间轴节点属性作用:
Play :永远从上一帧所处的位置开始播放
Play From Start :永远从第一帧所处的位置开始播放
Update:逐帧更新 - 时间轴设置面板
- 时间轴节点可以配合Lerp节点使用,但Alpha值不能大于1,否则被控制的Actor将出现抽搐想象
- Set Play Rate 设置时间轴的播放动画的速率,相当于播放视频的倍速
2.碰撞触发器
Box Collision
3. 事件分发器
- 其作用类似于服务器的分发传递功能,主要用于蓝图通信
- 定义分发器要定义在角色或者玩家控制器身上,最好定义在玩家控制器上,因为这两者容易获取到
- 定义事件分发器时可以设置参数,并通过绑定传递出去
- 绑定接收信息的蓝图类,要在被绑定蓝图刚开始被调用时进行绑定
- 在被绑定蓝图类中添加自定义事件
4. Flip Flop节点:
第一次走A 第二次走B,可以用于制作开关门之类的功能
按键事件的key可以获取按键,先转文本后转字符串
5. 开启后处理(边框高亮)
1、先在场景面板里找到后处理体积Actor,并在其后处理材质选项里设置后处理材质
2、开始边框高亮逻辑
五、电梯功能逻辑
- 电梯:事件分发器定义与调用
- 电梯:事件分发器绑定
- 电梯:运行逻辑
- 电梯开门:公开可编辑下标和应用
- 电梯开门:广播的设置
- 电梯开门:电梯打开门时的广播
- 房间:通知开门
- 房间:开门