Unity exam01】怎样制作一个血条栏"/>
【Unity exam01】怎样制作一个血条栏
怎样制作一个血条栏?
普通血条栏:
渐变色血条栏:
缓冲血条栏:
3D场景血条栏跟随玩家移动:
【参考视频】
url:YouTube - How to make a Health BAR in Unity!
url:bilibili -【中文字幕】Unity血条UI设计和受伤缓冲效果
一、制作UI
-
在Canvas下创建一个空物体HP bar,在空物体下方创建3个Image,分别为血条框bar 黑色,最大HP maxHP 白色,和当前HP currentHP 红色。(PS:注意先后顺序以调整显示的图层)
效果:(PS:这里最大HP,即白色部分与红色部分重合没有显示)
-
点击HP bar,添加slider(滑块)组件,进行以下设置,最小值和最大值可以关联血量自行调整。当拖动Value值时,就能实现改变血条的宽度。
效果:拖动Value值
-
创建一个脚本HPbar,拖拽给空物体HP bar
public class HPbar: MonoBehaviour
{public Slider slider; // 获得Slider对象public void SetHP(int currentHP){// 设置slider的value为当前血量slider.value = currentHP; }public void SetMaxHP(int maxHP){// 设置slider的最大值,并设置value为最大血量slider.maxValue = maxHP;slider.value = maxHP;}
}
- 创建一个Cube,作为玩家Player进行测试,新建一个玩家脚本Player
public class Player: MonoBehaviour
{[Header("健康参数")][SerializeField]int maxHP = 100; // 最大血量[SerializeField]int currentHP; // 当前血量public HPbar bar; // 获得HPbar组件引用private void Start(){// 游戏开始时,初始化血量currentHP = maxHP;// 设置slider的maxvalue和value值bar.SetMaxHP(maxHP);}private void Update(){
更多推荐
【Unity exam01】怎样制作一个血条栏
发布评论