Unity中简单的血条制作
发表于2017-08-31
Unity中制作血条有很多方法,多数用NGUI;这里我就说说另外一个简单的血条制作方法吧。
这个血条制作不像NGUI一样,它是靠一段代码就可以实现的,但看起来比较效果比较差,还是看代码吧;
- public Texture2D bg; //血条的背景,需要在外面进行拖拽赋值;
- public Texture2D blood; //血条
- float Life=100; //总的生命值;
- public Transform m_Transform; //绑定血条的物体Transform组件;
- void OnGUI()
- {
- vector3 headPos=Camera.main.WorldToScreenPoint(m_Transform.position Vector3.up*2.5f); //将该物体头上的一点转化为屏幕坐标;
- GUI.DrawTexture(new Rect(headPos.x-15,Screen.Height-headPos.y,100,3),bg); //血条的背景制作完毕,该血条在屏幕上的位置
- GUI.DrawTexture(new Rect(headPos.x-15,Screen.Height-headPos.y,100*life/Life,3),blood); //(headPos.x-15,Screen.Height-headPos.y) //该血条长100个单位,宽3个单位,这样应该看的懂哦;
- //当前的生命值/总的生命值=当前血条长度/背景长度
- }
这样也可以实现简单的血条制作,代码我是直接在这里面写的,有错误的话欢迎指正哦!