UIをタップした際にUI以外の部分をタップした時の処理も同時に実行されてしまう問題が発生したのでその対処法をメモしておこうと思います。
UIをタップした際に止めておきたい処理の部分に以下のコードを追加します。
if (EventSystem.current.IsPointerOverGameObject())
{
//マウス操作の場合
return;
}
if (Input.touchCount > 0 && EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId))
{
//実機でのタップ操作の場合
return
}
「Input.GetTouch(0).fingerId」を使用する際は 「Input.touchCount > 0 &&」
をセットで記述しないと警告が出て正しく処理されないようです。