【Unity】マウスのホバーチェックコード

ユーザーがマウスでボタンにカーソルを合わせたり、ボタンからカーソルを離れたりしたときに特定のアクションを実行するためのコードです

using UnityEngine;
using UnityEngine.EventSystems;

public class ButtonHoverEvent : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
{
    // ボタンにマウスが入った時に呼ばれるメソッド
    public void OnPointerEnter(PointerEventData eventData)
    {
        // ボタンにマウスが入った時の処理をここに記述
        Debug.Log("ボタンにマウスがホバーされました");
    }

    // ボタンからマウスが出た時に呼ばれるメソッド
    public void OnPointerExit(PointerEventData eventData)
    {
        // ボタンからマウスが出た時の処理をここに記述
        Debug.Log("ボタンからマウスが出ました");
    }
}
  1. using ステートメント:
    • using UnityEngine;: Unityエンジンの機能にアクセスできるようにするための名前空間のインクルードです。
    • using UnityEngine.EventSystems;: Unityのイベントシステムに関連する名前空間をインクルードしています。
  2. ButtonHoverEvent クラス:
    • このクラスは MonoBehaviour クラスを継承しており、Unityのゲームオブジェクトにアタッチして使用されます。
    • IPointerEnterHandler インターフェースと IPointerExitHandler インターフェースを実装しています。これらのインターフェースを実装することで、ボタンにマウスが入ったときとボタンからマウスが出たときに特定のメソッドが呼び出されるようになります。
  3. OnPointerEnter メソッド:
    • このメソッドは IPointerEnterHandler インターフェースで定義されており、ボタンにマウスが入った瞬間に呼び出されます。
    • マウスがボタンにホバー(カーソルがボタン上にある状態)されたときに実行したい処理をこのメソッド内に記述します。
    • この例では、ホバーが発生したことを示すデバッグメッセージを表示しています。
  4. OnPointerExit メソッド:
    • このメソッドは IPointerExitHandler インターフェースで定義されており、ボタンからマウスが離れた瞬間に呼び出されます。
    • マウスがボタンから離れたときに実行したい処理をこのメソッド内に記述します。
    • この例では、ボタンからのマウスの離脱を示すデバッグメッセージを表示しています。

このスクリプトをUnityのボタンオブジェクトにアタッチすると、そのボタンにマウスがホバー(カーソルがボタン上にある)されたときとボタンからマウスが離れたときに、それぞれ指定されたデバッグメッセージが表示されます。これにより、ボタンに対するマウスの操作に反応するカスタム動作を実装できます。

Unity

Posted by hidepon