1. 程式人生 > 其它 >Unity實現滑鼠點選物體出現其屬性資訊框

Unity實現滑鼠點選物體出現其屬性資訊框

這幾天一直在研究怎麼實現點選模型中 的一個部分,彈出該部分對應屬性資訊

下來說一下OnMouseDown使用方法:

1:選中模型某一個部分作為觸發物件,給該部分繫結BoxCollider元件,只有這樣此部分才能接收到滑鼠點選事件;新增過程為選中目標模組Component-Physics-zhBoxCollider,這樣便為模型添加了碰撞元件;

2:寫程式碼,寫好的程式碼繫結到該模組便可以實現點選模型實現想要的效果,實現函式OnMouseDown();

我想在滑鼠點選模型時彈出模型對應屬性資訊,因此寫了下面一段函式。

using UnityEngine;
using System.Collections;

public class ObjectInfo : MonoBehaviour {
private bool flag;
void Start(){
flag = false;

}
void OnMouseDown(){
flag = true;
}
void OnGUI(){
if(flag){
GUI.Box (new Rect (800, 20, 200, 200), "流量資訊");
GUILayout.BeginArea (new Rect (800, 40, 200, 200));
GUILayout.Label ("最大流量");
GUILayout.Label ("3Qma");
GUILayout.Label ("當前流量");
GUILayout.Label ("2.13Qma");
GUILayout.EndArea();
}
}
}
走的彎路:一開始想著新建一個空物體把模型中的子物體分離出來便於管理也便於檢視,給該物體繫結Boxclooider,繫結指令碼,但滑鼠點擊發揮不了作用,查了半天也不知道是哪兒錯了,後來直接給目標模型加上BoxCollider,又綁定了指令碼,於是奇蹟就發生了。就醬。當然你可以寫任何你想要實現的功能。