UE5学习笔记 FPS游戏制作31 显示计分板

一 制作计分板

创建一个RankPanel的UI蓝图
在蓝图里拖入如下物体

覆层(layout):让子物体跟随自己缩放,子物体需要设置为拉伸模式,有点类似于的panel,本身只是一个容器

调整各个物体

覆层:

锚点到中间

背景图片

垂直框

榜单文本框

水平框,也就是每一栏的标题

水平框里的文字,三个是一样的,名字文本框的填充比例是2

装配完效果

二 把根据队伍选择颜色提升为公共方法

原来我们在显示击杀信息里,根据角色是否和玩家是同一个队伍,为文本框设置了不同的颜色,现在计分板里也需要这个功能,但是Fpp_ui和RankPanel是两个不同的蓝图类,要复用方法,我们需要将其提升为公共方法

在Utility蓝图类添加新方法,GetsSideColor,设置为纯方法

需要注意的是 get player pawn前,需要获取一个世界上下文,这个是系统自带 的公共变量

修改一下whoKillwho蓝图里的判断颜色部分

三 计分板的一行数据

新建UI对象

新建一个RankRow的UI蓝图,添加一个水平框和三个文本框,水平框的大小不需要调整,因为他会作为子项插入RankPanel里,到时候大小由内容控制

三个文本框设置为变量

填充模式,名字的填充比例为2,其他两个是1

水平拉伸,垂直对齐,文本内容居中

编写变量和函数

三个text是UI

添加队伍,杀敌数,死亡数和名字,将他们设置为构造参数,构造参数只能一个一个设置

在事件构造事件里编辑节点

四 按Tab键开关计分板

在FppShooter的事件图表里

五 打开计分板时,显示数据

由于我们没有记录杀敌数,角色也是随机生成的,这里只模拟一下打开后显示数据

此时按下tab键,可以打开计分板

相关推荐
AOwhisky14 分钟前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
前端世界25 分钟前
MySQL 基础入门(学习第4天)——约束与 DML 操作详解
数据库·学习·mysql
dear_bi_MyOnly28 分钟前
【SpringBoot配置文件】
java·spring boot·后端·学习·spring·java-ee·学习方法
AOwhisky41 分钟前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
math_hongfan1 小时前
鸿蒙Flutter setState机制深入理解
学习·flutter·华为·harmonyos·鸿蒙
其实防守也摸鱼1 小时前
补天SRC新手入门指南:从0到1的漏洞挖掘之路
网络·python·学习·安全·web安全·数据挖掘·挖洞
星恒随风2 小时前
C++ STL 栈详解:stack 的使用、经典题目与简单模拟实现
开发语言·数据结构·c++·笔记·学习
玖玥拾3 小时前
Unity 3D 笔记(十一)UI 框架进阶:栈弹窗交互、BasePanel 基类虚方法、DoTween 界面动画
笔记·3d·unity
FellAveal3 小时前
【Go语言入门学习笔记】Part13.结构体与接口
笔记·学习·golang
学计算机的计算基4 小时前
回溯算法下篇:四道经典题讲透约束剪枝、原地标记、预计算与状态压缩
java·笔记·算法