第十一章 In Game Widgets
- 本章节就是做UI
2-Template Button Widget
- 这章节创建不同的UI
- 结束UI
- 胜利UI
- 暂停菜单
- 主菜单
- 加载UI
- 新建一个按钮小组件作为模版
3-Pause Menu Template Button
- 继续做更多模版UI
4-Lose Screen(游戏失败UI)
- 做失败的UI
- 之前按钮模版的调度程序就在这起作用了
- 测试一下
5-Lose Screen Animation
- 做结束UI的动画效果
6-Drawing Lose Screen
- 玩家死亡后启动结束UI
7-Warrior Game Instance(游戏实例)
- 创建游戏实例类,然后在我们的函数库中新建一个获取游戏实例的函数
- 将项目的默认游戏实例换成我们新建的
8-Get Game Level By Tag
- 新建表示关卡信息的标签
- 在游戏实例类中处理这些关卡的信息与获取
9-Open Level(重开游戏打开关卡)
- 给游戏实例蓝图添加上我们上面写的地图与标签
- 完善退出游戏与重新开始游戏逻辑
10-Toggle Input Mode
- 这节课解决,当我们角色死亡重新打开关卡后不能控制角色问题,这个原因是我们之前在角色死亡能力中加上了当玩家死亡就只能
UI
输入响应 - 创建一个辅助函数来指定当前需要的输入模式来解决这个问题
- 创建一个枚举类型来判断当前的输入模式
- 创建辅助函数用来切换输入模式
- 在重开游戏后使用此函数,角色就可以被控制了
11-Win Screen Widget(游戏胜利UI)
- 胜利UI
12-Drawing Win Screen
- 跟失败UI差不多
13-Pause Menu Widget(暂停菜单)
- 做暂停菜单UI
14-Drawing Pause Menu
- 新建一个按下暂停键的输入操作
- 绑定到默认的映射上下文中
- 因为这次的输入没有其他要处理的逻辑,所以可以不用在C++中定义绑定回调函数处理逻辑,直接在角色蓝图中设置按下此键,就启动暂停游戏的UI
- 运行结果
15-Main Menu Map(主菜单UI)
- 绘制主菜单UI,这个UI与其他UI不同,需要它有自己的地图和游戏模式
- 运行结果
16-Main Menu Button Template
- 制作主菜单的UI按钮
17-Main Menu Widget
- 主菜单UI
18-Main Menu Animation And Logic
- 制作主菜单淡入淡出动画
- 进行播放动画
- 在游戏实例中添加菜单的地图与标签
- 然后补齐之前UI中没有写入返回菜单的逻辑
- 如果返回主菜单有黑点那是因为游戏模式生成的默认Pawn,把它给去掉就行
19-Options Menu Widget(选项UI)
- 做选项UI
20-Options Menu Logic
- 处理选项逻辑
- 觉得选项响应速度慢可以调节一下响应的延迟时间
21-Save Game Object(存储游戏对象)
- 创建存储游戏的类
- 创建保存游戏的对象和插槽标签
22-Load And Save Game Difficulty
- 新建两个辅助函数用来存储不同难度与加载不同难度
- 在设置好了难度,返回主菜单的时候就进行保存当前难度
- 在每次进入选择难度UI时就加载存储的难度并更新UI
23-Game Mode Load Difficulty
- 这节课处理,将在UI界面设置的游戏难度传递到我们的GameMode中
- 重写GameMode中的InitGame函数用来加载UI修改的游戏难度
24-Loading Screen(加载屏幕)
- 添加用于在地图预加载和加载完成后处理加载屏幕
- 首先添加这个模块
- 重写
GameInstance
中的Init
函数进行初始化,然后新建两个回调函数
25-Survival Game Map
- 后面就做地图调整数据
26-Background Music
- 播放音乐
27-Section Warp Up
打包知识!
- GC在打包的时候一定要这里加上额外烘托的路径,不燃打包后运行游戏,游戏是不会去播放GC相关的特效的