====== ユーザー入力を受け取る ====== ===== 概要 ===== Inputクラスを使って、ユーザーの入力情報を受け取ります。 ==== キーが押されたか? ==== if (Input.GetKeyDown("a")) { Debug.Log("a!"); } if (Input.GetButtonDown("Jump")) { Debug.Log("Jump!"); } if (Input.GetKeyDown("up")) { Debug.Log("up!"); } ==== キーが押されたか? ==== if (Input.GetKeyUp("b")) { Debug.Log("b!"); } if (Input.GetButtonUp("Fire1")) { Debug.Log("Fire1!"); } ==== キーを押し続けているか? ==== if (Input.GetKey("c")) { Debug.Log("c!"); } if (Input.GetButton("Fire2")) { Debug.Log("Fire2!"); } ==== 水平方向の入力量(-1.0fから1.0f) ==== float horizontal = Input.GetAxis("Horizontal"); ==== 垂直方向の入力量(-1.0fから1.0f) ==== float vertical = Input.GetAxis("Vertical"); ==== マウス入力 ==== if (Input.GetMouseButtonDown(0)) { Debug.Log("Left Click!"); // 左クリック。 } if (Input.GetMouseButtonDown(1)) { Debug.Log("Right Click!"); // 右クリック。 } if (Input.GetMouseButtonDown(2)) { Debug.Log("Center Click!"); // 中央クリック。 } GetMouseButtonDown( 0 ) はシングルタッチと同等です。 ==== マウスの座標を取得 ==== Vector2 mousePos = Input.mousePosition; ==== マウスホイールの移動量を取得 ==== float wheel = Input.GetAxis("Mouse ScrollWheel"); ==== タッチ入力 ==== for( int i = 0; i < Input.touchCount; i++ ) { Touch touch = Input.GetTouch(i); Vector2 pos = touch.position; switch( touch.phase ) { case Began: print( "touch Began!" ); // タッチ開始。 break; case Moved: print( "touch Moved!" ); // タッチしていて移動中。 break; case Stationary: print( "touch Stationary!" ); // タッチしているが移動していない。 break; case Ended: print( "touch Ended!" ); // タッチ終了(離した)。 break; case Canceled: // システムによってキャンセルした。 print( "touch Canceled!" ); break; }; } ==== 加速度センサーの値 ==== Vector3 lowPassValue = Input.acceleration; ==== ジャイロセンサー有効 ==== Input.gyro.enabled = true; ==== キーバインドの確認 ==== Jumpなどキーの割り当てはEdit -> Project Settings -> Input で確認できます。 {{:wiki:unity:tips:unity_input_keybind.png?300|}} [[http://ws.cis.sojo-u.ac.jp/~izumi/Unity_Documentation_jp/Documentation/Manual/Input.html|Unity - Input]]