【Unity】EventTriggerの使い方。超簡単に画面タッチを検出できます。

どうも、だらはです。
今回は超簡単に画面タッチを検出できるEventTriggerの使い方について紹介します。
パソコンとスマホ両方対応なので、超便利です。

スポンサーリンク

使い方

早速ですが使い方を見ていきます。
以下の手順にて、タッチ検出ができるようになります。

  1. 「UI -> Event System」にてEventSystemをヒエラルキーに追加。
  2. タッチを検出したいオブジェクト(今回はCube)に、EventTriggerCollider後述のスクリプト(今回はSmapleClick.cs)をアタッチ。
  3. EventTriggerに、タッチを検出したいオブジェクト、タッチを検出するスクリプトのメソッド(FlgClick)を設定。(図2を参照)
  4. MainCameraPhysicsRaycasterをアタッチ。(図1を参照)

以上です。実行結果は以下の通りとなります。

◆実行結果(図1)

◆Cubeの設定(図2)

◆スクリプト「SampleClick.cs」

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SampleClick : MonoBehaviour
{
    public void FlgClick()
    {
        Debug.Log("クリックされました。");
    }
}

EventTriggerについて

今回は、EventTriggerでPointerClickを使いましたが、他にもたくさんのイベントが準備されています。

全部内容を記載するので用途に合ったものを使ってみて下さい。

  • PointerEnter:ポインタがオブジェクトに乗ったとき
  • PointerExit:ポインタがオブジェクトから離れたとき
  • PointerDown:ポインタがオブジェクトを押下したとき
  • PointerUp:ポインタを押下状態から離したとき
  • PointerClick:ポインタがオブジェクト上で押下し、同一のオブジェクト上で離したとき
  • Drag:ポインタがオブジェクトをドラッグしている間
  • Drop:ドラッグされてきた他のオブジェクトが、範囲内でドラッグ解除されたとき
  • Scroll:オブジェクトの範囲内でマウスホイールスクロールをしたとき
  • UpdateSelected:選択中のオブジェクトで毎フレーム発生
  • Select:オブジェクトが選択されたとき
  • Deselect:選択中のオブジェクトの選択状態が解除されたとき
  • Move:キー入力による移動イベント(上下左右の移動など)が起きたとき
  • InitializePotentialDrag:ドラッグ対象が見つかったとき
  • BeginDrag:ドラッグを開始したとき
  • EndDrag:ドラッグが終了したとき
  • Submit:サブミットボタン(リターンキーやスペースキーなど)が押下されたとき
  • Cancel:キャンセルボタン(エスケープキーなど)が押下されたとき

以上、だらはでした。

スポンサーリンク

基礎

Posted by daraha_gm