[unity2019]新 Input System でタッチスクリーンの情報を取得する

Input System でタッチスクリーンの取得についてあまり情報がなかったので残しておきます。
InputAction を詳しく解説した記事が多いですね…)

この記事は 新Input System のアクション(InputAction)はよくわからない、面倒くさい、という人向けです。

なんか苦手なんです。仕様が変わりそうな…そんな雰囲気もする…。

なお、導入の仕方やキーボード、マウス、ゲームパッドについては以前調べた記事をどうぞ。

前準備

Touchscreen を忘れずに入れましょう(これがないと Touchscreen.current == null になります)

タッチスクリーンを取得するコード

とくに難しいことはありません。
情報は今のところ 10 個固定で確保されているようです。
タッチした場所もわかるので、上手く使えばピンチイン・アウトなども可能だと思います。

using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Controls;

for (int i = 0; i < Touchscreen.current.touches.Count; i++)
{
    TouchControl tctl = Touchscreen.current.touches[i];
    Debug.Log($"{tctl.press.isPressed} {tctl.position.ReadValue().x} {tctl.position.ReadValue().y}");
}

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA