スワイプだけ実装していたのですが
パズルゲームでスワイプのstart positionでタッチしたのがどこかを使おうと思い。
inputsystemを使ってみた話はこちら
Unity : UnityEngin.InputSystemで入力してみる!keydown / swipe ジェスチャーをチェック!
inputsystemパッケージをインストールpackage manager で input systemをインストールします。 1.5.1でした。警告が出ました今までの inputシステムが使えな...
マウスダウンの場合(タッチでも同じ
EventSystemsを使います。
using UnityEngine.EventSystems;
void Update() { if (Input.GetMouseButtonDown(0)) { PointerEventData _pointer = new PointerEventData(EventSystem.current); _pointer.position = Input.mousePosition; Debug.Log("mouse position " + Mouse.current.position.ReadValue()); List<RaycastResult> _results = new List<RaycastResult>(); EventSystem.current.RaycastAll(_pointer, _results); Debug.Log(_results.Count); // gameobjectのタグを見てみます。 foreach(RaycastResult r in _results) { Debug.Log(r.gameObject.tag); } } }
こんな感じで出来ました◎
重なっている部分はすべて反応するので、必要なものをタグでチェックしています。
UI の gameobjectもEventSystemで問題なく反応しているようです。
コメント