zoukankan      html  css  js  c++  java
  • NGUI(九)ProgressBar,HUDText(掉血/加血数值显示)、UIFollowTarge(血条跟随)

    1.创建一个图片lifebar,添加BoxCollider和ProgressBar, 因为血条不需要交互,添加ProgressBar后删除BoxCollider,发现创建后其实时UISlider

    2.创建子物体图片Sprite,锚点和lifebar完全对齐,把Sprite设置给UISlider的foreground, 把lifebar设置给组件的background

    3.创建子物体文本Label,锚点和lifebar完全对齐

    HUDText组件

    导入HUDText组件,会在Assets下生成HUD Text文件夹

    HUD Text内有个example文件夹 删除,

    组件一:UIFollowTarge

    1.创建3D物体,当作Player,创建空物体做子物体,用来定位血条或名字位置

    2.创建空节点NameLabel,下面放Label组件,用来做名称跟随

    给NameLabel添加HUD Text的组件UIFollowTarget组件

    Target:要跟随的物体,主角等

    Game Camera:用来渲染Target物体的相机,通常是Main Camera

    Ui Camera:UI相机

    Disable if Invisible:超出视野范围是否失活Label组件 勾上是 不勾否

    当在视野范围时

    当物体不在视野中,跟随组件自动失活,节省性能

    组件二:HUDText (可以用来做掉血、加血数值显示)

    1.创建一个空物体hud在UIRoot下,添加HUDText组件

     Bitmap Font:静态字体

    True Type Font: 动态字体

    Font Size: 字号

    Font Style:字体加粗、倾斜等

    Apply Gradient: 是否渐变

    Gradient Top: 渐变上半部分颜色

    Gradien Bottom: 渐变下半部分颜色

    Effect:  字体添加效果

    • none: 普通
    • Shadow:阴影
    • Outline: 描边

    Effect Color: 描边颜色

    Offset Curve: 位置变化

    Alpha Curve: 透明度变化

    Scale Curve:缩放

    2.给hud添加脚本TestHub.cs

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class TestHub : MonoBehaviour
    {
        private HUDText hud;
        private void Awake()
        {
            hud = this.GetComponent<HUDText>();  //获取HUDText组件
        }
        private void Update()
        {
            if(Input.GetMouseButton(0))
            {
                hud.Add(-10, Color.red, 1);         //参数:  数值  字体颜色  字体停留时间
            }
        }
    }

    效果:

  • 相关阅读:
    Mysql入门-对表数据的增删改查
    Mysql教程-自动备份数据库
    前端基础教程-jQuery EasyUI 的EasyLoader实例
    html上标与下标应用
    git使用教程
    retrofit2.0缓存设置
    android 模拟用户点击事件
    power designer 16.5 生成mysql8.0注释
    Navicat连接Mysql8.0.11出现1251错误
    mongodb 安装配置及简单使用
  • 原文地址:https://www.cnblogs.com/yifengs/p/15547006.html
Copyright © 2011-2022 走看看