最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Unity實現(xiàn)游戲傷害數(shù)字顯示HUD的方法

 更新時間:2021年10月25日 10:28:43   作者:小紫蘇xw  
游戲中收到傷害掉血,會有飄動的傷害數(shù)值,本文主要介紹Unity實現(xiàn)游戲傷害數(shù)字顯示HUD的方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

傷害數(shù)字顯示HUD

游戲中收到傷害掉血,會有飄動的傷害數(shù)值;

可以使用OnGUI中GUI.Label來實現(xiàn);

可自定義字體,顏色,大小等;

如果需要更好看的數(shù)字特效,可以手動添加;

普通字體不夠好看可以使用插件FontEditor自定義;

Demo展示

HUDPopup類

飄血數(shù)字類,創(chuàng)建一個空物體,將這個腳本掛上去,再將這個物體拖成預制體;

public class HUDPopup : MonoBehaviour 
{
    //目標位置  
    private Vector3 mTarget;  
    //屏幕坐標  
    private Vector3 mScreen;  
    //傷害數(shù)值  
    public int Value;
    //文本寬度  
    public float ContentWidth;  
    //文本高度  
    public float ContentHeight;
    //GUI坐標  
    private Vector2 mPoint;
    //銷毀時間  
    public float FreeTime = 1.5F;
    public Font font;
    public Color color;
    public int fontSize;
    public float speed;
    void Start ()
    {
        //獲取目標位置  
        mTarget = transform.position;  
        //獲取屏幕坐標  
        mScreen = Camera.main.WorldToScreenPoint(mTarget);  
        //將屏幕坐標轉(zhuǎn)化為GUI坐標  
        mPoint = new Vector2(mScreen.x, Screen.height - mScreen.y);  
        //開啟自動銷毀線程  
        StartCoroutine("Free");  
    }  
  
    void Update()  
    {  
        //使文本在垂直方向山產(chǎn)生一個偏移  
        transform.Translate(Vector3.up * speed * Time.deltaTime);
        //重新計算坐標  
        mTarget = transform.position;  
        //獲取屏幕坐標  
        mScreen = Camera.main.WorldToScreenPoint(mTarget); 
        //將屏幕坐標轉(zhuǎn)化為GUI坐標  
        mPoint = new Vector2(mScreen.x, Screen.height - mScreen.y);
    }  
  
    void OnGUI()  
    {  
        //保證目標在攝像機前方  
        if(mScreen.z>0)  
        {  
           //內(nèi)部使用GUI坐標進行繪制  
           GUIStyle style = new GUIStyle();
           style.fontSize = fontSize;
           style.font = font;
           style.normal.textColor = color;
           GUI.Label(new Rect(mPoint.x, mPoint.y, ContentWidth, ContentHeight), "-"+Value.ToString(),style);
        }  
    }  
  
    IEnumerator Free()  
    {  
        yield return new WaitForSeconds(FreeTime);  
        Destroy(this.gameObject);  
    }  
}  

一些自定義屬性,默認Color的透明度是0,如果出現(xiàn)不顯示,可以看看這里;

使用時,在需要有掉血數(shù)字的物體上的腳本中實例化HUDPopup,創(chuàng)一個HUD預制體對象,放在該物體的子節(jié)點下某個位置(一般在怪物頭頂創(chuàng)建一個空節(jié)點,用來當HUD的父物體);

測試類代碼:

public class Test : MonoBehaviour
{
    public GameObject popupDamage;
    public Transform hudPos;
    
    private void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            GameObject mObject = (GameObject)Instantiate(popupDamage, hudPos.position, Quaternion.identity);
            mObject.GetComponent<HUDPopup>().Value = Random.Range(20, 40);
        }
    }
}

到此這篇關(guān)于Unity實現(xiàn)游戲傷害數(shù)字顯示HUD的方法的文章就介紹到這了,更多相關(guān)Unity 傷害數(shù)字顯示HUD內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Parallel.For循環(huán)與普通for循環(huán)的性能比較

    Parallel.For循環(huán)與普通for循環(huán)的性能比較

    這篇文章介紹了Parallel.For循環(huán)與普通for循環(huán)的性能比較,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#開發(fā)WPF程序中的弱事件模式

    C#開發(fā)WPF程序中的弱事件模式

    這篇文章介紹了C#開發(fā)WPF程序中的弱事件模式,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • c#使用xamarin編寫撥打電話程序

    c#使用xamarin編寫撥打電話程序

    Xamarin是一個行動App開發(fā)平臺,提供跨平臺開發(fā)能力,開發(fā)人員透過Xamarin開發(fā)工具與程序語言,即可開發(fā)出iOS、Android 與Windows 等平臺的原生(Native) App 應用程序,不須個別使用各平臺的開發(fā)工具與程序語言,
    2015-05-05
  • C#使用Socket實現(xiàn)本地多人聊天室

    C#使用Socket實現(xiàn)本地多人聊天室

    這篇文章主要為大家詳細介紹了C#使用Socket實現(xiàn)本地多人聊天室,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C#實現(xiàn)DataList里面嵌套DataList的折疊菜單

    C#實現(xiàn)DataList里面嵌套DataList的折疊菜單

    這篇文章主要介紹了C#實現(xiàn)DataList里面嵌套DataList的折疊菜單,以實例形式詳細分析了DataList嵌套實現(xiàn)折疊菜單所涉及的JavaScript、HTML與C#相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • C#使用log4net打日志

    C#使用log4net打日志

    本文主要介紹了C#使用log4net打日志,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C# WebApi 路由機制剖析

    C# WebApi 路由機制剖析

    這篇文章主要介紹了C# WebApi 路由機制剖析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 10個C#程序員經(jīng)常用到的實用代碼片段

    10個C#程序員經(jīng)常用到的實用代碼片段

    如果你是一個C#程序員,那么本文介紹的10個C#常用代碼片段一定會給你帶來幫助,從底層的資源操作,到上層的UI應用,這些代碼也許能給你的開發(fā)節(jié)省不少時間。以下是原文:
    2015-09-09
  • C#實現(xiàn)winform版飛行棋

    C#實現(xiàn)winform版飛行棋

    這篇文章主要為大家詳細介紹了C#實現(xiàn)winform版飛行,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • DataGridView帶圖標的單元格實現(xiàn)代碼

    DataGridView帶圖標的單元格實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了DataGridView帶圖標的單元格的實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08

最新評論

廉江市| 镇雄县| 梅州市| 昌宁县| 双流县| 平顺县| 望奎县| 修文县| 辽源市| 潜山县| 天全县| 阳谷县| 清镇市| 渝北区| 柳州市| 银川市| 汝阳县| 米林县| 武胜县| 上林县| 南平市| 建昌县| 卢湾区| 长阳| 南皮县| 渭源县| 木里| 改则县| 黄梅县| 拉孜县| 宁海县| 丁青县| 象山县| 普安县| 彰化县| 东源县| 汽车| 来安县| 会东县| 贵德县| 临江市|