Unity3D學習之(NPC頭頂文字的實現)

2021-06-28 07:53:52 字數 1215 閱讀 3325

今天介紹乙個npc

的實現:

效果圖:

**如下:

//主攝像機物件

private camera camera;

//npc名稱

private string name = "奧莉

";//npc模型高度

private float npcheight; 

void start()

camera = camera.main;

//得到模型原始高度

float size_y = collider.bounds.size.y;

//得到模型縮放比例

float scal_y = transform.localscale.y;

//npc模型高度

npcheight = (size_y * scal_y);

void ongui()

//得到

npc頭頂在

3d世界中的座標

//預設

npc座標點在腳底下,所以這裡加上

npcheight

它模型的高度即可

vector3 worldposition = new vector3(transform.position.x, transform.position.y + npcheight, transform.position.z);

//根據

npc頭頂的

3d座標換算成它在

2d螢幕中的座標

vector2 position = camera.worldtoscreenpoint(worldposition);

//得到真實

npc頭頂的

2d座標

position = new vector2(position.x, screen.height - position.y);

//計算

npc名稱的寬高

vector2 namesize = gui.skin.label.calcsize(new guicontent(name));

//設定顯示顏色為黃色

gui.color = color.yellow;

//繪製

npc名稱

gui.label(new rect(position.x - (namesize.x / 2), position.y - namesize.y, namesize.x, namesize.y), name);

Unity3D學習之剛體

前言 以前從未接觸過unity,今天接觸了unity,對自己的一些疑點做了一下總結,之所以接觸unity,是因為在畢業快實習的時候通過朋友介紹,認識了unity,過程就不說了,言歸正傳,開始我們的學習吧 我們想要完成球體自由落體後撞擊倒桌面 如圖 一般我們給球體乙個剛體屬性,球體自由下落 但我們會發...

Unity3D學習之(介面)

1 介面 介面描述的是可屬於任何類或結構的一組相關功能,所以實現介面的類或結構必須實現介面定義中指定的介面成員。介面使用inte ce 關鍵字進行定義,可由方法 屬性 事件 索引器或這四種成員型別的任意組合構成。2 介面的特性 介面類似於抽象基類,不能直接例項化介面 介面中的方法都是抽象方法,實現介...

Unity3D學習之(列舉型別)

首先 我們再次回顧了上次銀行登入系統的登入 的實現!登陸的實現 這段 實現了驗證密碼的正確性和三次輸入不正確就中斷輸入的功能 public void login console.writeline 請輸入密碼 for int i 2 i 0 i password console.readline i...