Unreal Engine 5 C++ Advanced Action RPG 十一章笔记

第十一章 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相关的特效的
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值