在本文中,将学习如何利用UE的动态图形UI设计器(UMG)实现一些基础的游戏内HUD元素和前端菜单。你将学习如何实现体力和能量条,以及如何跟踪和显示玩家弹药量。你还将学习如何创建用于启动游戏、设置分辨率或退出游戏的主菜单。之后你将学习如何添加用于暂停游戏或返回主菜单的游戏内暂停菜单。

步骤1 :创建一个UI,在资源文件夹中右键,然后如下图选择1再选择2,命名为HUD。

步骤2:创建另外2个控件蓝图,一个主菜单MainMenu,另一个暂停菜单PauseMenu。

步骤3:在资源文件夹中右键,创建一个新关卡命名为Main。

步骤4:打开Content/ThirdPersonBP/Blueprints文件夹中的ThirdPersonCharacter蓝图

此蓝图是可操纵角色的蓝图,我们将在这一蓝图中创建一些信息,传递给HUD控件蓝图进行显示

步骤5:选中ThirdPersonCharacter,点击Add Component按钮创建一个名为MyPlayer的蓝图,点击添加变量按钮,创建一个新变量。

步骤6:在新变量的细节面板中,将变量命名为Health,将变量类型改为float类型,并将默认值改为1。改了名字类型后要先点"编译"按钮,才会出现默认值选项。该变量代表在HUD上显示的玩家的体力值。

步骤7:另外创建一个名为Energy的float型变量,默认值设为1.0,代表HUD上显示的玩家的能力值。

步骤8:另外创建一个名为Ammo的整型变量,默认值设为25,代表HUD上显示的玩家的弹药量。

步骤9:另外创建一个名为MaxAmmo的整型变量,默认值设为25,代表HUD上显示的玩家的最大弹药量。

步骤10:拖动EventBeginPlay节点的输出针脚创建CreateWidget节点,类型选择HUD。

步骤11:将CreateHUDWidget节点的返回值提升为变量,改名为HUD。会自动出现Set节点对该变量进行设置。这样便会在游戏开始时创建HUD蓝图控件并将其存储为变量,供日后存取使用。

步骤12:拖动Set节点的输出针脚并添加Add to Viewport节点。

这样做可以把Target指定的目标蓝图控件添加到玩家窗口中,即将UI显示到游戏窗口。

在开始生成实际HUD之前,需要完成的最后一项工作是为角色变量提供一种变更方式。

步骤13:在ThirdPersonCharacter蓝图中定义一个名为Player的变量,类型为MyPlayer类型。

步骤14:在MyPlayer蓝图中点击Functions栏的+按钮添加自定义函数,SubHealth、GetHealth、SubEnergy、GetEnergy、SubAmmo、GetAmmo。这里放一下SubHealth和GetHealth的函数设计图,其它的函数同理。

        

其中GetHealth有个ReturnNode返回值节点,左边选中函数后右边会显示出函数的属性面板,属性面板下面的Inputs和Outputs分别表示函数的输入参数和输出参数,具体类型、名字、个数由自己设置,点击右边的+按钮就能添加参数。变量连线的下面的2个连接节点,从变量拉线出来选择最下面的Add Reroute Node节点就能创建,使用连接节点能避免连线重叠的问题。

步骤15:找到ThirdPersonCharacter的Jump代码块,在Jump函数后拖线调用MyPlay组件的SubEnergy函数。然后在一开始时获取一下MyPlayer类型对象并给Player变量赋值。

步骤16:打开HUD蓝图,选中表示能量的Text,将其绑定到MyPlayer类型变量Player的Energy变量上(变量Player是步骤13定义的),这样当变量Player的Energy变量发生变化时,Text控件显示的数字自动变化。ThirdPlayer是HUD中定义的ThirdPersonCharacter类型变量,一开始时要获取并设置一下,这样在对表示能量的Text进行绑定的时候才能使用。

步骤17:最后我们运行一下测试下功能,结果每次角色跳起来的时候显示的能力值就会减少1,实现了我们想要的功能,生命值弹药量也同理,这里就留给你们自己动手操作实现一下了。

UE 项目UI的快速设计和显示UI相关推荐

  1. 视频教程-游戏UI界面框架设计系列视频课程-Unity3D

    游戏UI界面框架设计系列视频课程 二十多年的软件开发与教学经验IT技术布道者,资深软件工程师.具备深厚编程语言经验,在国内上市企业做项目经理.研发经理,熟悉企业大型软件运作管理过程.软件架构设计理论. ...

  2. UI设计师需要学习哪些知识?UI设计零基础怎么入门?

    本文由:"学设计上兔课网"原创,图片素材来自网络,仅供学习分享 UI设计师需要学习哪些知识?UI设计零基础怎么入门?很多初学设计的小伙伴都不是很了解ui,觉得UI设计及时做界面.做 ...

  3. php班级界面设计素材,24套流行的UI KIT界面设计素材

    24套流行的UI KIT界面设计素材 8月 13, 2015 评论 Sponsor 设计需要紧跟趋势,2015年已过一大半,扁平化UI设计到底有什么改进了吗?这些都是要靠设计师自己去发现,比如去逛设计 ...

  4. 小程序的ui应该怎么设计?

    UI设计中小程序的设计是很多UI设计师在工作中会碰到的,一款好的小程序设计页面,会带来效果很好的用户体验,下面小编就为大家详细的分享一下具体小程序的ui应该怎么设计? UI设计培训分享:小程序的ui应 ...

  5. 【项目实战】个人博客(SpringBoot,SSM,thymeleaf,Semantic UI)——从设计思路到部署一站式教学

    一.前言 1.项目背景 此项目并非原创,项目原型是李仁密老师的作品,具体的教学视频来自b站https://www.bilibili.com/video/BV1nE411r7TF,不过up主貌似也是搬运 ...

  6. 电商APP商品详情页设计套路(分层PSD模板)!透析UI/UE必须懂的营销设计思维!

    电商APP重点在于商品详情页,打造一个优秀的商品详情页,完全能够提高转化率! UI设计.交互体验.文案撰写.产品的商业模式来聊一聊电商app商品详情页是怎么"套路" 设计app商品 ...

  7. 能帮你快速设计好APP的UI kits套装

    能帮你快速设计好APP的UI Kit通常包含了非常全面的资源集合,同时也能让您正确的规划组织结构,您也可以把您创意跟模板结合.UI Kit通常包含了各种模板和ui组件(按钮,复选框,进度条,导航栏等) ...

  8. UED、UCD、UE、UI、交互设计概念

    作者:王阅微 链接:https://www.zhihu.com/question/19908990/answer/14314128 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...

  9. 快速提高你的UI设计水平的一些小技巧

    UI设计师这个岗位在最近几年的缺口是比较大的,很多企业都在招UI设计人员,想要学习UI设计或者提升UI设计技术的同学,可以看看小编分享的以下内容,善用这些UI设计小技巧,快速提高你的设计水平! 快速提 ...

最新文章

  1. 杭电多校第六场-J-Ridiculous Netizens
  2. 环形队列PHP,环形队列 - Go语言中文网 - Golang中文社区
  3. [转][C/C++]函数名字修饰(Decorated Name)方式
  4. Springboot+MyBatis-plus+postgresSQL 的整合
  5. vue在html中写style,vue开发之style(六)(CSS页面布局之样式、背景、文字)
  6. 转基因粮食的毒性,首先是因为农药
  7. 电脑同时安装python2和3_电脑上同时安装Python2和Python3
  8. Flash,EEPROM差别
  9. python 成语库_python正则表达式抓取成语网站
  10. activemq 下载以及安装、应用
  11. Unity UnityWebRequest使用方法
  12. fn1-call-call-fn2-面试题
  13. 线程池 - 还可以这么理解?
  14. iOS内购-防越狱破解刷单
  15. shell编程中空格的使用
  16. python 背景音乐程序代码_python 喜马拉雅 音乐下载 演示代码
  17. 点云旋转平移(三)—python open3d点云旋转
  18. Monkey King - 左偏树
  19. 爬楼梯当中的递归简化计算
  20. ansible一键部署脚本

热门文章

  1. [转]LTE资源调度(7)-DRX不连续接收(1)
  2. 【GIS坐标系介绍】WGS84坐标系、Web墨卡托、GCJ02坐标系、BD09坐标系
  3. 1203 - 数据存储 - 应用安装位置
  4. 掌握竞标DAPP的编写
  5. 网络安全-实战篇 ZZZPHP1.61 代码审计-从SQL注入到Getshell
  6. 百度echarts 堆砌面积图
  7. 关键词之-关键词堆砌!
  8. Fixed There was a problem with the editor 'vi'
  9. USACO2010牛友
  10. 2022第七届少儿模特明星盛典 河南赛区 决赛圆满结束