Unity3D EasyTouch challenge

本文关键字:challenge EasyTouch Unity3D | 更新日期: 2023-09-27 18:18:32

我刚刚为Unity3D购买了EasyTouch 3.1插件,我只是不能让EasyTouch从附加到空对象的脚本中识别具有碰撞器的对象。

如果有人有使用EasyTouch的经验,我将非常感激。

下面是我使用的代码:
using UnityEngine;
using System.Collections;
public class tet1 : MonoBehaviour {
    // Subscribe to events
    void OnEnable(){
        EasyTouch.On_TouchStart += On_TouchStart;
    }
    // Unsubscribe
    void OnDisable(){
        EasyTouch.On_TouchStart -= On_TouchStart;
    }
    // Unsubscribe
    void OnDestroy(){
        EasyTouch.On_TouchStart -= On_TouchStart;
    }
    // At the touch beginning
    public void On_TouchStart(Gesture gesture){
        // Verification that the action on the object
        print ("YEP: " + gesture.pickObject.name);
    }
}

当我点击对象时,我得到以下消息:

NullReferenceException: Object reference not set to a instance of Object

我得到它在下面一行:"print (" yeah: " + gesture.pickObject.name);"所以我猜我在这行代码中做错了什么,我无法弄清楚。

Unity3D EasyTouch challenge

我没有使用该插件的经验,但似乎您正在注册任何触摸事件,然后,在处理程序上,您不检查对象是否被触摸。

你应该选

public void On_TouchStart(Gesture gesture)
{
    // ensure an object is touched
    if (gesture.pickObject != null) 
    {
        // Verification that the action on the object
        print ("YEP: " + gesture.pickObject.name);
    }
}