我在游戏对象上添加了一个对撞机。 但是脚本中的onmousedown永远不会触发。
还有脚本Back
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Back : MonoBehaviour
{
public GameObject[] objectstexts;
public Rotate rotate;
private void OnMouseDown()
{
rotate.StartRotations();
}
}
背面的游戏对象不是多维数据集,也不是我要单击的多维数据集。 我使用Back空游戏对象只是为了获得其名称,以切换底部多维数据集上的名称。从退出到返回。
后空游戏对象位于“退出”多维数据集的同一位置。
答案 0 :(得分:0)
确保脚本已附加到您要单击的游戏对象上。 确保您已启用对撞机 确保您没有调整对撞机的大小或位置 确保没有其他对撞机。 OnMouseDown()的工作方式与Raycast()一样……第一件事就是获得OnMouseDown()的作用。
如果一切正常,但仍然无法正常工作,请删除该对象,然后通过添加新对象,添加脚本来重新开始...
答案 1 :(得分:0)
关于OnMouseDown
API的第一条声明是
当用户在OnMouseDown
或GUIElement
上方按下鼠标按钮时,会调用
Collider
。
您的空游戏对象没有任何这些对象。
例如,您可以在其中添加BoxCollider
,尽管不可见按钮的可用性非常可疑。但是,现在的主要问题可能是另一个立方体在此对撞机的前面,因此您从未真正击中它。
它被另一个立方体阻挡了