有许多游戏中会出现我们点击物体,物体就会消失的效果,在unity3d中要点击场景中的特定物体让其消失可以通过以下的两种方式实现。
工具/原料
unity3d
物体自身监听鼠标
1、unity3d创建一个立方体Cube。
2、在项目文件夹创建一个“Disappear”脚本。
3、添加OnMouseDown方法。void OnMouseDown(){ print ("被点击消失"); Destroy (this.gameObject); }
4、把“Disappear”脚本拖放到立方体Cube上面。
5、运行游戏,没点到立方体是不会消失的。
6、当我们点击立方体,立方体就消失了,并且打印出“被点击消失”。
使用RaycastHit
1、在立方体的检视面版的Tag上点击,选择“Add Tag”。
2、添加一个Tag“aa”。
3、接着把立方体的Tag设置为“aa”。
4、打开“Disappear”脚本,在Update中添加如下的代码,上面的OnMouseDown可以删除鼓饫废希掉。 Ray myRay=Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit myHit; if(Physics.Raycast(myRay,out myHit)) { if(Input.GetMouseButtonDown(0)) { if(myHit.collider.gameObject.tag=="aa") { Destroy (GameObject.FindWithTag("aa")); print ("又被点击消失了"); } } }
5、这次我们可以直接把“Disappear”脚本放在相机上面,或者其它不会被销毁的物体上面。
6、运行游戏后,我们点击立方体同样消失了,然后输出“又被点击消失”。