EventTrigger组件仅适用于UI系统?

时间:2015-02-16 07:02:50

标签: unity3d

我是Unity新手并使用4.6版本。

我有一个只是精灵的预制件。我实例化其中三个。

我希望从这些实例中接收触摸和鼠标事件。

因此,我从c#脚本向它们添加了EventTrigger组件,并添加了ClickEvent。

我还添加了IPointerClickHandler并实现了它。

但它永远不会有任何事件。我错过了什么?

TriggerSystem是否仅适用于UI系统?因为我没有添加任何UI Pannel或UICanvas等(而是我添加了一个空对象并添加了TriggerSystem组件)

如果这不是一个好方法,请给我一个开始的方向。

提前致谢。

2 个答案:

答案 0 :(得分:0)

要使GUI系统正常工作,场景中也应该有一个EventSystem对象。

你也可以这么简单,从编辑器中添加一个collider2d到精灵。

将此内容写入脚本,将其附加到gameObject。

void OnMouseDown() {
    // do something
}

Unity还可以将鼠标事件转换为触摸系统上的触摸事件,因此您可以不必担心简单的触摸事件。

答案 1 :(得分:0)

以下是移动设备。

如果您想在没有用户界面的情况下进行游戏控制,可以使用Input

This是Unity文档。

它指向TouchPhase,所有触摸阶段都可以找到here

Unity文档有很好的示例代码,我认为你应该检查它。