分享

unity 使用NGUI 显示角色血条和名字

 kiki的号 2017-02-24



先说一下好处和原理:

如果用unity自带的GUI处理,需要在OnGUI() 中每个循环调用GUI.BeginGroup、  GUI.DrawTexture、TextFilter.DrawOutline 之类的代码,有很高的内存开销。

NGUI 不只是仅仅用于拼接UI,这里主要是去掉NGUI上的UICamera,使用MainCamera控制显示。此时的NGUI需要绑定在角色身上,如图:




角色里面创建一个object,设置Y轴坐标,通常角色头顶高一点。这样就绑定完毕。

这个是NGUI 编辑的截图:




  1. 在LateUpdate中调用                 
  2.   
  3. //mWorldPosition 绑定角色的那个object  
  4. //mCachedTrans nugi的object  
  5. Vector3 screenPos = Camera.main.WorldToScreenPoint(mWorldPosition);  
  6.               Vector3 uiWorldPos = mUICamera.ScreenToWorldPoint(screenPos);  
  7.   
  8.               mCachedTrans.position = uiWorldPos;  
  9.   
  10.               mCachedTrans.rotation = mUICamera.transform.rotation;  


最后看效果:





    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多