U3D游戏角色血条制作并显示血量变化

关键:利用Slider来制作血条
大概效果:
数字会随着血量变化而变化。

步骤

1、在层级面板中右击,选择UI中的Slider.

2、创建好后,将Slider命名为HealthBar,可以看到层级面板中Slider的结构为,删掉其中的“Handle Slide Area”.

3、在层级面板选中HealthBar,在右侧的检查器窗口可以看到Slider组件属性,在MaxValue和MinValue内设置值,表示角色的血量范围,这里设置血量范围0-100,勾选整数.

4、选择HealthBar下的Background,在右侧检查器中,点击Rect Transform下的stretch.

点开stretch后,按住“Alt”键同时鼠标点击右下方的方块,让Background铺展开来.

铺展开的HealthBar为如下形式

5、对Fill Area和其下的Fill也做上一步的操作。(注意,Fill Area和Fill要分别进行操作),效果如下

6、改变Background和Fill的颜色来区分。


效果:
HealthBar组件下的Value滑块可以看改变值时的状态,若是在改变值的时候,血条改变方向不对的话可以改变Fill Area的旋转值,根据自己游戏内坐标调整。

我的调整

7、在HealthBar层级下新建一个旧版的Text,并命名为CurrentHealth.

修改文字的格式、位置、内容等

8、创建一个脚本,命名为PlayControl,挂载到你的游戏的主角上。
首先创建变量用来存储当前的血量和最大血量

private float maxHealth=100;
public float MyMaxHealth
{get { return maxHealth; }
}
private float currentHealth;
public float MyCurrentHealth
{get { return currentHealth; }
}

在Start()中

currentHealth = maxHealth;
HealthBar.Instance.changeHealth();

减少血量的函数

public void ReduceHealth(float health)
{currentHealth = Mathf.Clamp(currentHealth - health, 0, maxHealth);HealthBar.Instance.changeHealth();
}

9、创建一个脚本,命名为HealthBar,并挂载到HealthBar上。

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class HealthBar : MonoBehaviour
{Slider healthBar;//在unity中关联游戏角色public  PlayerControler _play=new PlayerControler();//创建一个单例public static HealthBar Instance;//挂载创建的CurrentHealth的文本UIpublic Text healthNumber;void Awake(){Instance = this;}public void changeHealth(){//在playcontrol脚本中调用该函数,所以先判断是否获取到组件,//若是放在该脚本的Start中可能会获取不到if (healthBar == null){healthBar = GetComponent<Slider>();}//使用该段代码前,在Slider检视器中勾选整数,设置最大最小值healthBar.value = _play.MyCurrentHealth;healthNumber.text=healthBar.value+"/"+_play.MyMaxHealth;}
}

10、挂载完HealthBar脚本后,将主角拖到“播放”框内,将CurrentHealth文本拖到“HealthNumber”中,差不多可以实现效果了

如果有问题,欢迎留言 (๑•̀ㅂ•́)و✧

U3D游戏角色血条制作并显示血量变化相关推荐

  1. 3d 角色血条制作方案:解决近大远小的策略

    血条制作方案 1. 2D在一个canvas上做血条位置映射. 1  血条可以设置于3d 空间转换成2d 空间 2  设置 到 canvas上的 血条 position 缺点:不可以跟随角色距离而近大远 ...

  2. Unity 3D游戏十:血条制作

    前言 中山大学数据科学与计算机学院3D游戏课程学习记录博客. 游戏代码: gitee 参考师兄的博客: 师兄博客 游戏视频:bilibili 游戏要求 血条(Health Bar)的预制设计. 具体要 ...

  3. unity3d做会减少的血条_2019-2020年Unity3D——人物主角的血条-经验的显示.doc

    Unity3D--人物主角的血条 经验的显示 今天说一下人物主角的血量和经验还有人物等级金币的显示.? ? ???//主角刚出现的时候现有血量? ? public static int blood = ...

  4. Unity UGUI血条制作详细教程

    Unity3d游戏中使用UGUI制作角色头顶血条,具体步骤如下: 1.模型添加血条挂点 2.制作血条 (1).创建血条UGUI canvas (2).修改canvas参数: RenderMode参数设 ...

  5. Unity3D游戏编程-血条

    Unity3D游戏编程-血条 文章目录 Unity3D游戏编程-血条 一.作业要求 二.项目配置 三.项目演示 (1)视频演示 (2)项目下载 (3)文字说明 (4)项目截图 四.前置内容 (1)IM ...

  6. Unity 2D血条制作方式

    博主在前两篇博客中写了关于分段式血条和多层血条的实现方式,但是基于一下初学者的考虑,还是决定把2D的血条制作方式也是贴出来,方便大家进行学习和使用. 第一步:我们创建一个Slider,把图片和背景修改 ...

  7. [Unity2D/3D]实用的血条制作(第二期)

    [Unity2D/3D]实用的血条制作(第二期) 前言:第一期我为大家介绍了一种我自己摸索出来的血条制作方法,不是很常规,在这里我为大家介绍一种比较常用的血条制作方法,利用Mask组件来制作,让我们一 ...

  8. Unity的NGUI插件的HUD Text插件血条数值的显示

    原文取自:qq_32009641的博客 以前没接触这个插件时,做的小demo中实现怪物血条使用GUI绘制的 (就是雨松大大的方法,很经典 在这里先谢过大大) 用这个插件实现怪物血条只需简单的几部 方法 ...

  9. ue4 怎么修改骨骼动画_它来了,它来了! 游戏角色与动画制作的智能工具 iClone Unreal Live Link 闪耀登场!!!...

    点击蓝字关注我们 它来了,它来了! 游戏角色与动画制作的智能工具 iClone Unreal Live Link 闪耀登场!!! Reallusion研发团队近日最新发布了iClone Unreal ...

最新文章

  1. java 最大子数组_求一个数组中子数组的最大和算法(Java实现)
  2. 安装SQL2K,当创建挂起文件操作之后...
  3. SpringBoot整合RabbitMQ测试
  4. 前端学习(1923)vue之电商管理系统电商系统之说明角色要完成的功能
  5. python爬取商城数据_Python爬取新版CRMEB小程序商城后台订单数据,保存为excel
  6. 宏定义中有浮点数_GEO是什么?还可以定义新的数据类型吗?
  7. 深度学习《CNN架构续篇 - 1乘1卷积》
  8. 常见物理性能测试仪器设备档案
  9. html video播放rmvb,HTML如何播放rmvb格式的视频??要可以播放的代码。。。。
  10. 鬼压床、清明梦、外星劫持……睡眠麻痹症能够解释这些都市传说吗?
  11. 3dmax导出fbx模型到unity
  12. 蚂蚁愚人节视频透露的真相:区块链只有科技巨头才玩得起?
  13. google输入法 日文 [CapsLock]キー ひらがな⇔直接入力の設定
  14. B 站崩了,总结下「高可用」和「异地多活」
  15. CentOS.7卸载与安装Nvidia Driver
  16. 大数据 搜索 ES 一
  17. Samsung Galaxy S5(G9006V)刷机降级(Android 6.0.1-Android 4.4.2)(MD)
  18. JavaScript 中 mouseenter 与mouseover 区别
  19. Android自定义View之画圆环(手把手教你如何一步步画圆环)
  20. Exercise 35: 分支和函数

热门文章

  1. C#开发实战随笔----001 圆形按钮设计
  2. Umi v3 Ant Design Pro v5 从零开始实战视频教程(34 个视频)
  3. jmeter接口测试面试题(jmeter接口测试步骤)
  4. H5开发的交互类型有哪些
  5. 记录一天mysql查询时差8小时问题
  6. Bootstrap基本介绍及运用
  7. 【工作中解决的一些问题】
  8. 基于PHP鲜花花卉销售网站
  9. 【IoT】硬件产品设计:指纹锁临时密码开锁原理详解
  10. 【性能优化】网络编程 - PHP - 使用TCP长连接的一种优化思路 - 学习/实践