您的位置:首页 > 移动开发 > Unity3D

Unity3D 点击模型某部分出其属性信息框

2016-05-23 09:59 218 查看
这几天一直在研究怎么实现点击模型中 的一个部分,弹出该部分对应属性信息

下来说一下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,又绑定了脚本,于是奇迹就发生了。就酱。当然你可以写任何你想要实现的功能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity3d C# OnMouseDown