ue4显示变量_UE4虚幻引擎学习云笔记(八)-UMG UI设计器快速入门-[3.暂停菜单UI]

本文介绍了在UE4中使用UMG UI设计器创建暂停菜单的步骤,包括布局设置和程序脚本编写。内容涵盖暂停菜单控件蓝图的创建,通过键盘M键触发暂停,设置打开和关闭鼠标光标,以及在暂停菜单中实现Resume和Quit to Main功能。同时,文章详细阐述了如何在暂停和恢复游戏时切换输入模式,以及如何在退出时关闭暂停菜单和返回主菜单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

a36d9f367ac48e8fa1f60ab11f67f2b4.png

【八、UMG UI设计器快速入门】- [3.暂停菜单UI]

19-11-08

茕兔QIONGTWO:UE4虚幻引擎学习云笔记-目录​zhuanlan.zhihu.com
64a7abd190cbebf6b358d435679282e0.png
【八、UMG UI设计器快速入门】- [2.主菜单UI]​zhuanlan.zhihu.com
5f3f8b4a4743157e74cc83b9070dfb4d.png

暂停菜单内容目标

UI安全区border:可用以限制UI安全区,本节用以灰色层覆盖提高菜单本身的视序。
PAUSE暂停:菜单标题,同时菜单控件具有暂停游戏的功能。
RESUME恢复按钮:返回游戏的功能。
OPTIONS按钮:与官方文档不同,我觉得应该添加的设置项,这样无需退出游戏去设置。
QUIT TO MAIN返回主菜单按钮:构成用户流程闭环,可以返回主菜单决定继续或退出。

1.暂停菜单布局

打开暂停菜单Pause Menu控件蓝图,根据前两节设置HUD与主菜单的认识,布局以下内容。

84d79686f7cfac6f112f821a90822230.png

1)在暂停菜单垂直盒子里,设置有鼠标悬停视觉反馈的暂停菜单按钮组,包括:

PAUSE暂停标题,
RESUME恢复按钮,
OPTIONS按钮,
QUIT TO MAIN返回主菜单按钮。

暂停菜单垂直盒子设置:

ZOrder 设置1,保证其处于前端;

设置勾选 此为变量Is Variable,用以之后与设置菜单切换可显性。

2)从MainMenu主菜单控件蓝图中,复制设置项菜单OptionsMenu过来。

3)安全区Border,设置与主菜单背景封面类似,把颜色设置为半透明黑色。

eec3388741d2e0ff0d4e3ad5ff00446f.png

2.编写暂停菜单程序脚本

功能目标如下:

目标1:游戏中按下M时,打开鼠标指针,打开暂停菜单UI,暂停游戏。目标2:退出暂停菜单时,执行什么程序。目标3:暂停菜单设置项等各按钮对应功能。

目标1设置:

游戏中按下M时,打开鼠标指针,打开暂停菜单UI,暂停游戏。

1)为实现按M的事件,打开第一人称角色FirstPersonCharacter蓝图,

新建键盘M键输入事件节点;创建控件Create Widget节点,设置为Pause Menu。

b9d708d668bb989188132fdf77715872.png

2)将返回值Return Value引出,提升为变量,命名变量为Pause Menu Reference

52e51ebd7ea8b6abed9d356180ac067d.png

3)为确保菜单有效、且有效时打开鼠标光标,需要判断暂停菜单是否开启,设置有效与否执行启动菜单控件、亦或打开鼠标光标程序。

将暂停菜单引用变量从变量菜单中获取,引出 是否有效Is Valid判断节点。

c928bdbf099dce9ad8ccf884c7642b83.png

4)在暂停菜单控件未生效的时候创建暂停菜单控件,

无效Is Not Valid 输出至创建暂停菜单控件节点。

9b8b2bf80bc7f3fbb9eff2ff85bc19c2.png

5)创建Get Player Controller节点,返回值输出引出、创建打开鼠标光标Set Show Mouse Cursor,在暂停菜单控件生效时,访问暂停菜单控件引用。

Is Valid的有效输出至打开鼠标光标Set Show Mouse Cursor节点,勾选打开鼠标光标显示的True勾

打开鼠标光标节点输出新建设置输入模式为纯UI模式Set Input Mode UI Only节点,Get Player Controller节点输出至Player Controller输入暂停菜单控件引用Pause Menu Reference变量输入至聚焦控件In Widget to Focus

12bee82b1b654ce8bb53c8301e0ba728.png

6)将暂停菜单输出至视口,并暂停游戏。

最后链接Add to Viewport节点,Set Game Paused节点并将Paused设置勾选Ture。

55ab04a5b5f6f270f5ea1fd91941f471.png

目标2设置:

设定退出暂停菜单时,执行何种程序。

1)两个退出暂停菜单控件的入口:ResumeQuit to Main

打开PauseMenu控件蓝图,进入图表,

于变量中分别选择这两个按钮,创建点击事件,

并为暂停菜单控件获取玩家控制器操作创建Get Player Controller节点。

56fbfed65be983aac9e128c2c5aa4e96.png

2)Resume按钮将回到游戏,需要在回到游戏时更换输入从纯UI模式到纯游戏模式,且关闭鼠标光标。

创建Set Input Mode Game Only节点,链接Get Player Controller让它获取玩家控制器。

再引出Get Player Controller创建 设置Show Mouse Cursor 节点,关闭Ture勾。

e74d1e87d2710db60b8c2c224aade02e.png

3)Quit to Main将返出至主菜单,需要关闭HUD控件,且打开主菜单所在的Main关卡。

7da671c1088999027937c7e7fe2af18d.png

创建RemoveHUD函数,将跳转至该函数控件蓝图。

创建Get Player Character,输出到转换至第一人称角色Cast to FirstPersonCharacter

以访问第一人称角色蓝图中的HUD。

8f3dec138eff58f47784fa45eda577e5.png

在按下QuittoMain事件后,加入以上设置的Remove HUD节点,移除HUD自身,Open Level节点设置到Main关卡。

a0997e606a7d4c9eeab2fd4f79572d29.png

3)最后两路程序都将暂停菜单移除,且关闭暂停程序。

创建Remove from Parent节点,移除目标为暂停控件自身;

创建Set Game Paused节点,不勾选设置为False。

7717f63f6f99686d883585142384edb7.png

目标3设置:

与先前主菜单设置的,切换UI组引用变量可显性、设置分辨率,逻辑一样。

从主菜单图表复制节点过来,更改切换可显性的变量为对应UI变量。

ac868ee0ecf5469a0e3652d065d5e6ad.png

编译保存全部。


8a914cea50c2969992481edf2941bdd1.gif

以上便实现了按M进入可以设置分辨率、回到主菜单的覆盖暂停菜单的UI功能。

至此, 完成了设立的UI交互功能目标,构建了一套基础的用户流程交互闭环UI系统。

以上。

接下来做一点UI设计。

【八、UMG UI设计器快速入门】- [4.字体问题]​zhuanlan.zhihu.com
792b9a3e7af73a01bf9b720bf2218064.png
【八、UMG UI设计器快速入门】- [5.自定义控件模板]​zhuanlan.zhihu.com
37ea7f3fd006a15da51fce377ba2bbbb.png
茕兔QIONGTWO:UE4虚幻引擎学习云笔记-目录​zhuanlan.zhihu.com
64a7abd190cbebf6b358d435679282e0.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值