虽然用的是2D模板,但是重要的实现部分基本2D和3D是一样的。

想要实现实现伤害飘字,首先就需要创建一个文本组件,这里我使用的是TextMeshPro_Text(UI)组件类型,建议在一个空对象底下直接创建一个Text类型的UI文本。

将Text组件内的字符格式根据你的需求设置好后,(颜色大小等要根据个人的使用习惯和不同场景下都有差异,但是基本都需要将字节居中)将其设置为预制体就行了。

然后如何生成字体在敌人头上呢?只需要让敌人在受到攻击的位置创建这个文本对象就可以了,然后将控制文本对象各种显示效果的脚本放置在文本对象中即可。

这是控制生成文本对象的代码

//该脚本要挂载都敌人组件上,在敌人的血条改变或者受到伤害时调用该方法float rand = Random.Range(-2, 2);//随机-2~2的值Vector3 new_position = transform.position;//将受到攻击的敌人的位置转换为Vector3//在位置上生成文本对象new_position.x += rand;GameObject gameObject = Instantiate(Text, new_position, Quaternion.identity);//给文本对象中的文本赋值,显示数值gameObject.GetComponentInChildren<Hurt_Text>().Init(-change);

随机值的作用就是为了使得生成数值不会集中在一个地方,因为有时候你的攻击频率太快可能导致几个字节重叠在一起,观感很不好。

这是控制文本对象运行的代码

public class Hurt_Text : MonoBehaviour
{private TMP_Text text;//字符文本组件float alpha;//阿尔法值,控制字体逐渐消失的效果[Range(0, 10)]public float speed;//飘动速度[Range(0, 1)]public float speed_weak;//速度衰弱[Range(0, 50)]public float dis_time;//消失时间[Range(0, 10)]public float weak_time;//开始衰弱时间public Color color;//文本颜色//这个必须提醒一下,必须使用Awake而Start不行,因为在上一段文本赋值时//到文本对象脚本的Start还没有执行到,会造成text为null异常void Awake(){alpha = 1;text = GetComponentInChildren<TMP_Text>();Destroy(gameObject, dis_time);text.color = color;}void Update(){transform.Translate(0, speed * Time.deltaTime, 0);//使字体向上移动if (speed > 0){speed -= speed_weak;//使得向上移动的速度逐渐减少}else if (speed <= 0 && weak_time >0){weak_time -= Time.deltaTime;//当速度为0后,字体颜色开始透明的时间}else if (alpha > 0 && weak_time <=0) {alpha -= 0.01f;//控制字体逐渐透明}text.color = new Color(text.color.r, text.color.g, text.color.b, alpha);//修改字体颜色,透明度等}public void Init(int hurt){text.text = hurt.ToString();//设置文本}
}

当然我要实现的效果是向上飘一定距离后停下,然后再在一定时间后开始缓慢消失,实现其它的效果时,你可以通过自己的理解改写,当然这里其实有点多余的部分,因为在alpha(控制字体颜色透明度,1的时候完全不透明,0就是完全透明)在到了0后其实字体就看不见了,这个时候直接销毁组件就行了,没必要设置消失时间,当然如果要实现其它的效果或者着不想要逐渐消失就可以保留。

不得不吐槽一下我在CSDN上看到的做unity伤害飘字有一部的解释对萌新太不友好了(对,萌新说的就是我自己),缺少详细的说明和代码过程解释,甚至有些在代码上不加注释......

来看看配合上期的追踪子弹最终的实现效果

Unity实现伤害飘字相关推荐

  1. [Unity][Animator][UGUI]伤害飘字跟随角色不停的移动

    在相关资料1的基础上实现,伤害飘字 特效 跟随 玩家角色. 逻辑图 UIFollowManage using System.Collections.Generic; using UnityEngine ...

  2. [Unity][Animationamp;amp;Animator][特效]伤害飘字

    角色受到伤害,伤害数值 在角色头顶 飘字. 有几种实现方法: 1.DOTWEEN 2.Unity自带的Animation&Animator 本文着重讲第2种实现方法. 设置Animator 的 ...

  3. 【unity造轮子】伤害飘字效果,封装代码

    先看最终效果 创建一个飘字特效预制体 具体的大小按自己喜好设置 封装资源管理器 记得挂载飘字特效预制体 using UnityEngine;//资源管理器 public class ResourceM ...

  4. Unity 游戏飘字(伤害、状态等)

    3d游戏中,角色或敌人受到伤害或者BUFF等处理需要特效,还需要飘字.下面将使用Unity预设来做飘字效果. 1.创建prefab(可以创建多种),以伤害为例: 2.飘字管理器: using Syst ...

  5. Unity 伤害飘血效果

    Unity 伤害飘血效果 前言 一.效果演示 二.相关代码 前言 一个对于战斗中飘字飘血的功能,比较简单. 一.效果演示 字的颜色没调整好,所以有点不好看. 二.相关代码 根据自定义曲线控制飘字效果 ...

  6. dotween unity 延时_Unity教程-使用DoTween实现飘字效果教程

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 DoTween是一款比较强大的补间动画插件,本篇文章我们来学习下,利用DoTween来实现下飘字的效果,首先我们看下DoTween中几个方法: Seque ...

  7. Unity 战斗飘字飘血 ShootTextPro

    前言,写了一个小工具,主要就是战斗中对应的飘字,源码相应的注释已经标注,非常方便自定义改动,其中ShootTextProController可以做成单例,传入对应的tranform即可,为了展示示例, ...

  8. 【Cocos2dx】飘字特效与碰撞检测

    飘字特效主要常见与游戏里面的掉血表示伤害输出等.碰撞检测常见于一些横版过关或者跑酷的手游,判断是否有碰到食物,或者什么障碍物等,都是比较常见的功能,下面就用一个小例子,来说明这两个特效如何完成. 如下 ...

  9. Cocos2d-x扣血飘字特效用完你就消失--之游戏开发《赵云要格斗》(8)

     这里是Evankaka的博客,欢迎大家前来讨论与交流------ 转载请注明出处http://blog.csdn.net/evankaka/article/details/42740575 本文这里 ...

最新文章

  1. 安装exchange server 2003服务器
  2. iOS 应用开发基础翻译 改为 笔记和总结
  3. MFC常用类、成员函数、数组类、Cstring类、CTime类、CPoint类
  4. 使用Dockerfile定制镜像来部署Tomcat项目
  5. 【解析】spring-boot整合通用mapper
  6. ssm使用全注解实现增删改查案例——DeptServiceImpl
  7. itools 不支持缩略图下载_PS插件缩略图3.8.0.96安装教程
  8. 不容易,今天的成果。
  9. SBM延迟飙升mysql_Mysql解决主从慢同步问题
  10. 如何在思科交换机上配置Telnet远程登录
  11. hyperledger fabric 2.3.3 环境搭建教程
  12. 超兔指纹浏览器(TO12345)是什么?
  13. mysql 3358端口_好用的MySQL抓包工具:sniffer-agent
  14. 配置Pico App ID
  15. Android Activity的隐式调用(跨进程)★
  16. 做国外LEAD需要一些邮箱怎么办
  17. html5新年主题,HTML CSS3农历新年祝福语生成器
  18. 第二周:四人小组项目
  19. catti二级笔译综合能力真题_【CATTI二级笔译】综合能力知识点总结(一)
  20. SWUSTOJ #78 计算生日是星期几

热门文章

  1. AI生成二维码Stable diffusion生成可识别二维码【附完整教程】【附完整案例】
  2. vs2013 javascript语言服务遇到错误且已关闭解决方案
  3. dqn 应用案例_强化学习(九)Deep Q-Learning进阶之Nature DQN
  4. 亲身经历:中型企业ERP选型全纪录
  5. nunit测试报告 转html,单元测试软件NUNIT使用说明
  6. 【xdoj难题集】 1018 Josephus环的复仇的复仇
  7. 面经 收藏的 这可能不只是一篇面经
  8. Android 挂逼 修炼之行---解析公众号文章消息和链接文章消息如何自动打开原理
  9. ixwebhosting优缺点分析
  10. 【2022CSPJ普及组】 T3.逻辑表达式(expr)