我使用了Unity(https://docs.unity3d.com/ScriptReference/UI.Graphic.html)提供的示例来创建一个新的可视UI组件。
但是,我现在想检测新创建的网格物体上的click事件。为此,我实现了IPointerClickHandler接口,但是当我在GameObject的RectTransform框内单击但未在实际的Mesh上单击时(在RectTransform的旁边),可以检测到单击。
我尝试了此处为“非UI对象” https://stackoverflow.com/a/41392130/9989790建议的解决方案,但没有成功。
有什么想法吗?
答案 0 :(得分:0)
您需要在该对象上具有一个“ MeshCollider”组件。另外,您的相机需要具有“物理光线投射器”组件。光线从相机中投射出来,如果与您的网格碰撞器发生碰撞,则指针进入/退出(和潜在点击)事件将发送到您的对象。
但是即使这些必需的组件就位,您仍然需要当心可能会“窃取”鼠标单击的重叠对象。