Version: Unity 6.0 (6000.0)
言語 : 日本語
ゲームコントローラーの検出
iOS アプリケーションのテストとデバッグ

ゲームコントローラー入力の処理

入力スキームは、開発しているアプリケーションの種類によって異なります。Unity の Input Manager 設定で、特定のアクションを設定できます。デフォルトでは、Unity Input の Horizontal (水平) 軸はゲームコントローラーの D-pad にマップされ、左のアナログスティックは拡張されたプロファイルコントローラーにマップされます。特定のコントローラーボタンに対応するキーコードと軸については、入力マッピング を参照してください。

例Jump アクションにジョイスティックの A ボタンを設定する

  1. Edit > Project Settings に移動します。
  2. Input Manager カテゴリを選択します。
  3. Jump アクションを開きます。
  4. Positive Buttonjoystick button 14 に設定します。

このコード例は、対応する入力処理を示しています。

using UnityEngine;

public class Jumping : MonoBehaviour
{
    Rigidbody2D rb;
    float jumpForce = 100f;

    void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        if (Input.GetButtonDown("Jump"))
        {
            rb.AddForce(new Vector2(0f, jumpForce));
        }
    }
}

例Fire アクションにジョイスティックの X ボタンを設定する

  1. Edit > Project Settings に移動します。
  2. Input Manager カテゴリを選択します。
  3. Fire1 アクションを開きます。
  4. Positive Buttonjoystick button 15 に設定します。

このコード例は、対応する入力処理を示しています。

using UnityEngine;
 
public class Shooting : MonoBehaviour
{
    float bulletSpeed = 500f;
    public Transform gun;
    public Rigidbody2D bullet;
 
    void Update()
    {
        if (Input.GetButtonDown("Fire1"))
        {
            var bulletInstance = Instantiate(bullet, gun.position, gun.rotation);
            bulletInstance.AddForce(gun.up * bulletSpeed);
        }
    }
}

ゲームコントローラー入力のマッピング

以下を使用して、Unity の Input 設定でコントローラー入力をマッピングすることができます。

名前 キーコード
A joystick button 14 joystick axis 14
B joystick button 13 joystick axis 13
X joystick button 15 joystick axis 15
サポート joystick button 12 joystick axis 12
Left Stick 該当なし Axis 1 (X) - Horizontal、Axis 2 (Y) - Vertical
Right Stick 該当なし Axis 3 - Horizontal、Axis 4 - Vertical
D-pad Up joystick button 4 Basic profile only: Axis 2 (Y)
D-pad Right joystick button 5 Basic profile only: Axis 1 (X)
D-pad Down joystick button 6 Basic profile only: Axis 2 (Y)
D-pad Left joystick button 7 Basic profile only: Axis 1 (X)
Pause joystick button 0 該当なし
L1/R1 joystick button 8 / joystick button 9 joystick axis 8 / joystick axis 9
L2/R2 joystick button 10 / joystick button 11 joystick axis 10 / joystick axis 11

その他の参考資料

ゲームコントローラーの検出
iOS アプリケーションのテストとデバッグ