这是我的代码
void Update ()
{
if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Began)
{
if ( Physics.Raycast(ray, out hit, 1000f ) )
{
for(int i=0; i< hit.collider.transform.childCount; i++)
{
var child = hit.collider.transform.GetChild(i).gameObject;
if(child != null)
child.SetActive(true);
}
hit.collider.gameObject.GetComponent<SpriteRenderer>().enabled = false;
//Debug.Log(hit.transform.gameObject.name);
}
}
}
此代码位于我场景中的相机上。它的作用是让我触摸游戏对象并摧毁。我触摸的第一个对象是2D精灵,我关掉它的精灵渲染器并打开它的子节点,精灵渲染器。
然而,一旦完成,我需要一种破坏游戏对象的方法。我真的不知道如何实现这一目标。
答案 0 :(得分:0)
Destroy (gameObject, 5);
将在5秒内消灭。
你也可以在OnMouseDown()中使用并在更新中备用所有for循环和光线投射的东西
如果你想要OnMouseDown(),你当然需要对象预制件上的脚本,而不是相机。