当前课程知识点:虚幻引擎(UE4)技术基础 > 第十章 蓝图应用 > 10.6 游戏结束与重玩功能 > 10.6 游戏结束与重玩功能
大家好
欢迎来到《虚幻引擎技术基础》课堂
我是主讲教师黄颖翠
现在我们将在《虚幻引擎技术基础》课程中
蓝图应用章节
学习实现游戏结束与重玩功能
一个游戏需要有始有终
那么结束条件必不可少
同时结束后也要有重玩的按钮
可以让玩家方便再次进入游戏
而不是关闭游戏重启
那么现在我们就是要完成这块的实现
设定玩家获胜条件
实现结束界面UI
实现重玩按钮等
好
现在开始操作部分
我们学习了原理
现在我们来实际操作一下
如何实现这两个效果
我们先设定胜利条件
有一个击杀目标
满足击杀数就胜利
我们打开这个HUD
我们可以看到这里我们拷贝一下
做一个击杀目标数
显示改成Target
数值为2
当我们杀了两个敌人就胜利
这里数值是需要绑定数值的
我们需要到主角蓝图上
定义一个Target整数变量
把眼睛睁开
因为需要在HUD里面外部获取他
我们在HUD这里绑定关系
和原来一样
cast to firstPersonCharacter转换类型
找到变量Target
赋值显示
这个也要绑定主角对象
好
我们运行一样
现在我们怎么让这个击杀数改变
我们需要击杀两个目标 则胜利
我们目前只能杀圆柱体
所以我们改这圆柱体蓝图的逻辑
在他的蓝图中
我们击杀的时候判定一下
在主角身上找到Target
获得它
我们做一个判定比较
如果已经击杀数大于目标数则判定
真则结束游戏
假则只是摧毁该物体
那结束逻辑这里
我们可以模块化管理
相当于程序中的自定义一个函数
我们在主角蓝图里先做自定义事件
首先
应该把鼠标暂停SetGamePaused
设置游戏暂停
第二件事情就是
是把鼠标显示出来
SetShowMouseCursor
这里目标是getPlayerController
获取玩家控制权
然后创建控件
CreateWidget
这里的UI我们还没有做
所以这里先空着
最后Add To View port
添加到显示视口中
保存
我们来做一个结束界面UI
放到UI文件夹
做一个用户界面
控制蓝图
取名WinManu
这里比较简单
我们先加一个文本框显示“你赢了!”
字体设置72
颜色就设置为绿色
然后字体居中
调整位置
位置y 200
尺寸y 120
加一个按钮
改名为Restart
在按钮上加一个显示字
尺寸 x 400
y 120
我们看你赢了Y位置为700
我们保持同一条直线下来
位置也设置y为700
你赢了
可以选择重玩
也可以选择退出
所以我们拷贝一个按钮
改名为Exit
显示文字退出
位置y 700
好显示完成了
现在还需要对按钮进行设置
这样就当我们按下按钮
它才有意义
在细节这里找到点击时
这个是当按钮按下后
会被调用的事件
这里可以来回切换视图
我们给退出按钮
也添加一个点击事件
好
我们来写一下这个按钮逻辑蓝图
这个结束按钮
直接可以调用一个
引擎自带的退出游戏函数
QuitGame
直接调用即可
而重启按钮
我们先重新调用打开关卡
OpenLevel
level是关卡的意思
然后这里写入
FirstPersonExampleMap
就是这个游戏的关卡名字
然后remove form parent
从视图中移除该UI的意思
然后我们回到刚刚的玩家蓝图中
把控件这里选择
刚创建的WinMenu 即可
好编译一下
这里报错
因为没有赋值是哪个控件
这里就是我们创建的UI控件
链接一下
就可以编译成功了
而这个EndGame
在哪里调用的呢
就是在圆柱体被击杀时
判定是否完成任务
完成则调用
好
这样结束界面就可以实现了
现在我们只有一个圆柱体
还需要再加一个
设置下圆柱体一定是可移动的
有了两个击杀目标
我们可以运行调试一下了
结束界面出来了
但是鼠标没有出来
我们看下蓝图显示鼠标这里
发现没有勾选
勾选后
才设置显示
不勾选是隐藏
好再试一次
试一下退出按钮
然后试一下重玩按钮
好
功能没有问题了
本小节的操作讲解已经完成
留给大家一个课后练习
请大家课后自己操作一下
定一个游戏失败的规则
做一个倒计时显示在屏幕右上角
1分钟后如果击杀任务没有完成
则显示游戏失败界面
好
本节课内容就讲解未完毕
感谢大家聆听
再见
-1.1 虚幻4引擎简介
--1.1 小节习题
-1.2 虚幻4引擎的安装及环境部署
--1.2 小节习题
-1.3 创建项目及试玩
--1.3 小节习题
-第一章 章节测试
-2.1 虚幻4编辑界面介绍01
--2.1 小节习题
-2.2 虚幻4编辑界面介绍02
--2.2 小节习题
-2.3 视口导航及基本操作
--2.3 小节习题
-2.4 导入资源、项目迁移和管理
--2.4 小节习题
-第二章 章节测试
-3.1 地形工具
--3.1 地形工具
--3.1 小节习题
-3.2 新建地形
--3.2 新建地形
--3.2 小节习题
-3.3 塑造地形
--3.3 塑造地形
--3.3 小节习题
-3.4 使用植被工具
--3.4 小节习题
-第三章 章节测试
-4.1 初识材质
--4.1 初识材质
--4.1 小节习题
-4.2 编辑基于物理材质
--4.2 小节习题
-4.3 使用贴图纹理创建材质
--4.3 小节习题
-第四章 章节测试
-5.1 大气照明和定向照明
--5.1 小节习题
-5.2 添加点光源
--5.2 小节习题
-5.3 添加聚光源
--5.3 小节习题
-5.4 光源质量和反射
--5.4 小节习题
-第五章 章节测试
-6.1 几何体及纹理贴导入
--6.1 小节习题
-6.2 素材整理和项目准备
--6.2 小节习题
-6.3 搭建流程
--6.3 搭建流程
--6.3 小节习题
-第六章 章节测试
-7.1 动画资源与编辑器
--7.1 小节习题
-7.2 混合空间
--7.2 混合空间
--7.2 小节习题
-7.3 动画窗口及编辑动画
--7.3 小节习题
-7.4 创建自定义角色
--7.4 小节习题
-第七章 章节测试
-8.1 创建粒子系统
--8.1 小节习题
-8.2 虚幻粒子基础功能介绍01
--8.2 小节习题
-8.3 虚幻粒子基础功能介绍02
--8.3 小节习题
-8.4 粒子特效的综合运用
--8.4 小节习题
-第八章 章节测试
-9.1 初识蓝图
--9.1 初识蓝图
--9.1 小节习题
-9.2 蓝图类型
--9.2 蓝图类型
--9.2 小节习题
-9.3 蓝图通信
--9.3 蓝图通信
--9.3 小节习题
-9.4 创建蓝图
--9.4 创建蓝图
--9.4 小节习题
-第九章 章节测试
-10.1 击中事件
--10.1 小节习题
-10.2 实现物体来回移动
--10.2 小节习题
-10.3 Input输入与玩家快捷键交互
--10.3 小节习题
-10.4 用户界面和HUD
--10.4 小节习题
-10.5 创建游戏约束
--10.5 小节习题
-10.6 游戏结束与重玩功能
--10.6 小节习题
-第十章 章节测试
-11.1 行为决策的AI
--11.1 小节习题
-11.2 AI监听玩家行为
--11.2 小节习题
-11.3 AI与玩家的攻击伤害
--11.3 小节习题
-11.4 AI生成点与随机巡逻
--11.4 小节习题
-11.5 优化游戏体验
--11.5 小节习题
-11.6 渲染及代码优化
--11.6 小节习题
-第十一章 章节测试
-12.1 音频基础
--12.1 小节习题
-12.2 音频混成器
--12.2 小节习题
-12.3 声音特效
--12.3 小节习题
-第十二章 章节测试