アナログJoyStick入力

Unityでアナログのジョイスティック入力を取得する方法について確認します

特徴

キー入力やボタンの入力はONかOFFかの2値になります
Unityでは、ONをtrue、OFFをfalseとしてbool型で扱います

それに対して、アナログ入力は連続した値になるため、数値として扱われます
float型でx, yそれぞれ、-1から+1までの値を取得できます

x軸は英語の水平を表すHorizontal、y軸は同じく垂直を表すVerticalで取得します

Joystick入力のイメージ

コードサンプル

Update()イベントでの取得になります

using UnityEngine;

public class InputController : MonoBehaviour
{
    void Update()
    {
        float x = Input.GetAxis("Horizontal");
        float y = Input.GetAxis("Vertical");

        Debug.Log($"x = {x}、y = {y}";
    }
}

JoyStickがないと・・・

キーボードの上下矢印、左右矢印が対応しています
長押しすると、徐々に数値が変化していきます

Unity

Posted by hidepon