Unity4.6よりUnityにはEventSystemが追加されました。これは例えばドラッグやクリックといった基本的な挙動を登録することが出来ます。
例えばダブルクリックを検知するコード。
これをColliderがアタッチされているオブジェクトに追加します。
後はメニューバー>GameObject>EventSystemでイベントシステムを配置し、MainCameraにPhysicsRaycasterを設定します。*1
もしCollider2Dで使用したい場合、PhysicsRaycast2Dを使用して判定します。
これを上手く使うと、例えばIPointerClickHandlerを使ってダブルクリックするといったイベントを使用したり、ゲーム内のユニットをクリックするといった事が簡単に実装出来るので、若干便利です。
使えるイベントはこちら
- IPointerEnterHandler
ポインタがオブジェクトに入ったときOnPointerEnterを呼ぶ- IPointerExitHandler
ポインタがオブジェクトから出たときにOnPointerExitを呼ぶ- IPointerDownHandler
ポインタがオブジェクト上で押されたときにOnPointerDownを呼ぶ- IPointerUpHandler
ポインタがリリースされたときにOnPointerUpを呼ぶ- IPointerClickHandler
ポインタが同じオブジェクトに押され、解放されたときにOnPointerClickを呼ぶ- IInitializePotentialDragHandler
ドラッグターゲットが検出されると、値を初期化するためにOnInitializePotentialDragを呼ぶ- IBeginDragHandler
ドラッグ開始時にOnBeginDragを呼ぶ- IDragHandler
ドラッグ中にOnDragを呼ぶ- IEndDragHandler
ドラッグ終了時にOnEndDragを呼ぶ- IDropHandler
ドロップ時にOnDropを呼ぶ- IScrollHandler
マウススクロール時にOnScrollを呼ぶ- IUpdateSelectedHandler
各チック選択時にOnUpdateSelectedを呼ぶ- ISelectHandler
選択時にOnSelectを呼ぶ- IDeselectHandler
選択解除時にOnDeselectを呼ぶ- IMoveHandler
移動イベントが発生したときにOnMoveを呼ぶ- ISubmitHandler
Submitが押された時にOnSubmitを呼ぶ- ICancelHandler
キャンセル時にOnCancelを呼ぶ
Unity - Manual: Supported Events
*1:逆に言えばEventSystemが無いとuGUIを含む全てのイベントが反応しないので注意が必要です。