欢迎来到天天文库
浏览记录
ID:34726650
大小:95.68 KB
页数:4页
时间:2019-03-10
《unity3d游戏开发之实现人物血条跟随人物移动》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、unity中实现人物血条跟随人物移动。 publicTexture2Dblood_red;//红色的贴图 publicTexture2Dblood_black;//黑色的贴图 public GameObjecthero;//主角对象 privateCameracamera;//照相机 floatnpcHeight;//UsethisforinitializationvoidStart(){ camera=Camera.main;//得到摄像机对象 npcHeight=1; //如果这是一个模型 //注解1
2、 ////得到模型原始高度 //floatsize_y=collider.bounds.size.y; ////得到模型缩放比例 //floatscal_y=transform.localScale.y; ////它们的乘积就是高度 //npcHeight=(size_y*scal_y);}//UpdateiscalledonceperframevoidUpdate(){ transform.LookAt(hero.transform);//保持NPC一直面朝主角} voidOnGUI(){
3、 //得到NPC头顶在3d世界中的坐标 Vector3worldPosition=newVector3(transform.position.x,transform.position.y+npcHeight,transform.position.z); //根据NPC头顶的3D坐标算换成2D屏幕中的坐标 Vector2position=camera.WorldToScreenPoint(worldPosition); position=newVector2(position.x,Screen.height-posit
4、ion.y); //计算血条的宽高 Vector2bloodSize=GUI.skin.label.CalcSize(newGUIContent(blood_red)); //在绘制黑色的血条 GUI.DrawTexture(newRect(position.x-(bloodSize.x/2),position.y-bloodSize.y,bloodSize.x,bloodSize.y),blood_black); //在绘制红色血条 GUI.DrawTexture(newRect(position.x-(
5、bloodSize.x/2),position.y-bloodSize.y,bloodSize.x,bloodSize.y),blood_red); }这篇文章来自狗刨学习网下面是经典鼠标点击对象的事件voidOnMouseDrag(){Debug.Log("鼠标拖动该模型区域时");} voidOnMouseDown(){Debug.Log("鼠标按下时"); }voidOnMouseUp(){Debug.Log("鼠标抬起时");} voidOnMouseEnter(){Debug.Log("鼠标进入该对象区域时");}voidOn
6、MouseExit(){Debug.Log("鼠标离开该模型区域时");}voidOnMouseOver(){Debug.Log("鼠标停留在该对象区域时");}
此文档下载收益归作者所有