スポンサーリンク

【Unity】ボタンのアップダウンを取得する方法

Unity

参考動画

今回は、ボタンクリックの押した時、離した時の判定の取り方を紹介していきます。

EventTriggerを使用する

通常のボタンでは、クリックしたときのみ指定した関数を実行することが出来ます。ですが、押されている間や離したときに処理を呼びたいときに、Buttonコンポーネントのみでは、実行することが出来ません。

対応策としては、画像のようにEventTriggerを追加することで対応することが出来ます。

まずは、EventTriggerコンポーネントのAddNewEventTypeをクリックし、出てきたメニューから、それぞれ、PointerDownPointerUpを選択します。

あとは、Buttonと使い方は同じで、ボタンを押したとき、ボタンを離したときに実行したい関数をそれぞれ設定するだけで、実行することが出来ます。

コード側

using UnityEngine;

namespace PFAssets
{
    public class VirtualController : SingletonMonoBehaviour<VirtualController>
    {
        public void RightButtonDown()
        {
            Debug.Log("RightDown");
        }

        public void RightButtonUp()
        {
            Debug.Log("RightUp");
        }

        public void LeftButtonDown()
        {
            Debug.Log("LeftDown");
        }

        public void LeftButtonUp()
        {
            Debug.Log("LeftUp");
        }

        public void EnterButtonDown()
        {
            Debug.Log("EnterDown");
        }

        public void EnterButtonUp()
        {
            Debug.Log("EnterUp");
        }
    }
}

コード側ではそれぞれのボタンに対応した関数を用意しています。あとはEventTriggerにて、それぞれ設定することで、動画のようにボタンの実装を行うことが出来ます。

タイトルとURLをコピーしました