博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NPC血条优化
阅读量:6249 次
发布时间:2019-06-22

本文共 1078 字,大约阅读时间需要 3 分钟。

hot3.png

--判断血条是否在屏幕中

public bool IsInView(Vector3 worldPos)     {         Transform camTransform = Camera.main.transform;         Vector2 viewPos = Camera.main.WorldToViewportPoint (worldPos);         Vector3 dir = (worldPos - camTransform.position).normalized;         float dot = Vector3.Dot (camTransform.forward, dir);//判断物体是否在相机前面          if (dot > 0 && viewPos.x >= 0 && viewPos.x <= 1 && viewPos.y >= 0 && viewPos.y <= 1)             return true;         else             return false;     }      void Update ()      {         Vector2 vec2 = Camera.main.WorldToScreenPoint (this.gameObject.transform.position);          if (IsInView (transform.position))          {             rectBloodPos.gameObject.SetActive (true);             rectBloodPos.anchoredPosition = new Vector2 (vec2.x - Screen.width / 2 + 0, vec2.y - Screen.height / 2 + 60);         }         else             rectBloodPos.gameObject.SetActive (false);     }

第二种:通过monoBehaviour来判断

void OnBecameVisible(){//可见状态下你要执行 的东西}void OnBecameInvisible(){//不可见状态下你要执行的东西}

 

转载于:https://my.oschina.net/u/698044/blog/1789787

你可能感兴趣的文章
从$a_n=f(n)$的角度理解数列中的表达式$a_{n+1}=\frac{k}{a_n}$
查看>>
Redis以及Redis的php扩展安装无错版
查看>>
总结性博客作业
查看>>
Windows Phone 8初学者开发—第11部分:设置SounBoard应用程序
查看>>
欧拉图和哈密顿图
查看>>
解线性方程组
查看>>
Python:pandas之DataFrame常用操作
查看>>
Appium移动自动化测试之—基于java的iOS环境搭建
查看>>
NOIP前的刷题记录
查看>>
洛谷P1973 [NOI2011]Noi嘉年华(决策单调性)
查看>>
书签(Bookmarks)
查看>>
Java 信号量 Semaphore 介绍
查看>>
Ubuntu常用软件安装与使用
查看>>
Anroid开发中常用快捷键
查看>>
RecyclerView分隔线定制
查看>>
文本处理(CSS,JS)
查看>>
VBScript 函数
查看>>
shell编程学习
查看>>
java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I错误解决
查看>>
apache源码安装
查看>>