在自定义这里建立一个节点,附上组件 HPBarComponent

该脚本继承自

被调用

该脚本被调用时是这样被调用的(游戏内作为可打击对象的entity都有这个方法):

比如在受伤时,出现一个ShowHPBar,方法就写在这个脚本里

该脚本维护着一个HpBarItem组成的表

这里表示如果已经生成过,则读取即可,如果未生成过,则进行生成。用到了其对象池的功能

以下这几行完成了创建和父物体绑定

                hpBarItem = Instantiate(m_HPBarItemTemplate);Transform transform = hpBarItem.GetComponent<Transform>();transform.SetParent(m_HPBarInstanceRoot);transform.localScale = Vector3.one;

最后返回这个hpBarItem的gameobject

最后,在showHpBar中完成信息的调用传输等

2.HPBarItem实体

canvas这里可以写继承。

这个HPBarItem只是一个继承了mono的脚本,它实现了哪些函数?

1. 初始化

这里的这个m_ParentCanvas其实是这里获得的

在初始化中,进行了reflesh,找到对象的位置并赋值。

在这里进行了有趣的坐标计算

    if (m_Owner != null && Owner.Available && Owner.Id == m_OwnerId){Vector3 worldPosition = m_Owner.CachedTransform.position + Vector3.forward;Vector3 screenPosition = GameEntry.Scene.MainCamera.WorldToScreenPoint(worldPosition);Vector2 position;if (RectTransformUtility.ScreenPointToLocalPointInRectangle((RectTransform)m_ParentCanvas.transform, screenPosition,m_ParentCanvas.worldCamera, out position)){m_CachedTransform.localPosition = position;}}

如果alpha值没有小于0,则还继续。如果小于,则统一由HPBarComponent的update去删除

 2. 删除,回到原位,等待被使用。

GameFramework 框架 范例starforce学习 HPbar相关推荐

  1. 从0开始学Unity做SLG系列(GameFramework框架)

    目录 GameFramework框架启动流程 GameFramework框架启动流程   找了2个系列教程,照着写完后,应该就有些基础了解了. 先看第一篇 StarForce 在看第二篇 Flappy ...

  2. 26Play框架教程2学习笔记

    Play框架教程2学习笔记 文章目录 1 play框架01 1.1 概述 1.2 特性 1.2.1 无缝集成现有开发环境 1.2.2 热重载和修改Bug 1.2.3 简单的无状态MVC架构 1.2.4 ...

  3. GameFramework篇:StarForce全解读(总目录)

    说实话,我刚开始看这个官方案例的时候,其实心里是没底的,因为模块和封装着实有点夸张(别误会,是我层次低的原因,并不是说这样不好).好了,说这些是想告诉大家,不要慌,我一个菜鸡都能挺过来你们也可以,并且 ...

  4. GameFramework框架详解之 框架总览

    一.前言 目前市场上有很多优秀个开源框架,比如ET,GameFramework,DBFramework,StrangeIOC,Loxodon-Framework,KSFramework,xluaFra ...

  5. GameFramework框架详解之 Sound声音管理

    一.前言 虽然现在大厂的大项目可以选择想Wwise这类的音频插件来进行声音的开发,不需要什么声音模块管理了,但是我们也知道,小公司或者小项目组,是用不起这种收费软件的,所以大部分的项目还是需要我们自己 ...

  6. DLPack构建跨框架的深度学习编译器

    DLPack构建跨框架的深度学习编译器 Tensorflow,PyTorch和ApacheMxNet等深度学习框架提供了一个功能强大的工具包,可用于快速进行原型设计和部署深度学习模型.易用性通常是以碎 ...

  7. Pytorch框架的深度学习优化算法集(优化中的挑战)

    个人简介:CSDN百万访问量博主,普普通通男大学生,深度学习算法.医学图像处理专攻,偶尔也搞全栈开发,没事就写文章,you feel me? 博客地址:lixiang.blog.csdn.net Py ...

  8. DL框架之AutoKeras框架:深度学习框架AutoKeras框架的简介、特点、安装、使用方法详细攻略

    DL框架之AutoKeras框架:深度学习框架AutoKeras框架的简介.特点.安装.使用方法详细攻略 Paper:<Efficient Neural Architecture Search ...

  9. 机器学习框架ML.NET学习笔记【1】基本概念与系列文章目录

    一.序言 微软的机器学习框架于2018年5月出了0.1版本,2019年5月发布1.0版本.期间各版本之间差异(包括命名空间.方法等)还是比较大的,随着1.0版发布,应该是趋于稳定了.之前在园子里也看到 ...

最新文章

  1. 计算某个时间距离现在_计算成像amp;深度学习(1)
  2. Linux tree命令
  3. ylbtech-LanguageSamples-Generics(泛型)
  4. 压力管道流量计算公式_带你全面了解各种流量计!
  5. C++ STL容器——序列式容器(array、vector、deque、list)
  6. 多线程基础与JUC进阶笔记
  7. 推荐的这5个高效在线工具,每一个都很良心!
  8. 深度解析 | 基于DAG的分布式任务调度平台:Maat 1
  9. Pandas 排序之后索引问题
  10. cvs数据导入工具 oracle_oracle数据库的导入导出
  11. java -cp 配置文件目录_java – 使用可执行JAR时指定Log4j2配置文件
  12. 三方集成 - 友盟分享总结
  13. 计算机多媒体技术专业论文,多媒体技术论文
  14. maker mv rpg 源码_rpgmakermv插件
  15. 计算机的ps快捷键,PHOTOSHOP常用快捷键大全
  16. Android烂笔头
  17. 内存设置无效: 内存预留 (sched.mem.min) 应该等于内存大小 (65536)
  18. MIT 操作系统 jos make grade出现no jos.out
  19. celery爬取58同城二手车数据及若干问题
  20. 带变压器和不带变压器的RJ45

热门文章

  1. 情感伤感语录标题文案
  2. R语言处理数据——生成随机数
  3. macbook air 17 inter 芯片笔记本 安装单系统windows11
  4. C语言程序设计 详细注意事项
  5. 机器人锤石下路组合_《LOL》S9超强下路组合卡莎机器人玩法攻略
  6. java 用户串号_并发时Java HttpSession串号问题
  7. 配置tomcat 虚拟主机优化
  8. rust copy 和 clone 区别
  9. Python statsmodel包训练LR模型
  10. c语言改变doss窗口的颜色,C语言编程高手帮我看一下!谢谢!