Unity でのキーボードとマウス入力の実装

Unity にキーボードとマウスの入力を実装すると、開発者はユーザーのインタラクションをキャプチャし、ゲームやアプリケーションを制御できるようになります。Unity は、キーボードとマウスの入力を処理するためのさまざまなメソッドとイベントを提供します。Unity でのキーボードとマウス入力の実装の概要は次のとおりです。

キーボード入力

キーボード入力をキャプチャするには、開発者は、Unity が提供する 'Input' クラスを使用できます。'Input.GetKey' メソッドまたは 'Input.GetKeyDown' メソッドは、特定のキーが現在押されているかどうか、または押されているかどうかを確認します。以下に例を示します。

void Update()
{
    if (Input.GetKey(KeyCode.Space))
    {
        // Space key is being held down
    }

    if (Input.GetKeyDown(KeyCode.Escape))
    {
        // Escape key has been pressed
    }
}

この例では、'Update' メソッドがフレームごとに呼び出され、'Input.GetKey' を使用してスペース キーが押されているかどうかを確認します。 と、'Input.GetKeyDown' を使用して Esc キーが押されているかどうか。

マウス入力

マウス入力をキャプチャするには、開発者はクラス 'Input' を使用することもできます。Unity は、'Input.mousePosition''Input.GetMouseButtonDown'、および'Input.GetMouseButton'。以下に例を示します。

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        // Left mouse button has been pressed
    }

    if (Input.GetMouseButton(1))
    {
        // Right mouse button is being held down
    }

    Vector3 mousePosition = Input.mousePosition;
    // Get the current position of the mouse cursor
}

この例では、'Update' メソッドを使用して、'Input.GetMouseButtonDown' を使用してマウス ボタンの押下を検出し、マウスが押されたかどうかを確認します。 'Input.GetMouseButton' を使用してボタンを押したままにし、 を使用してマウス カーソルの現在位置を取得します'Input.mousePosition'

イベントベースの入力

Unity また、'EventSystem' および 'EventTrigger' コンポーネントを介したイベントベースの入力処理も提供します。このアプローチにより、開発者はボタンのクリックやマウスホバーなどの特定のイベントに応答して呼び出される関数を定義できます。開発者は、'EventTrigger' コンポーネントを使用して Unity エディタ でイベントを定義し、それらのイベントを処理する関数を作成できます。コードの中で。

入力軸

Unity 入力マネージャーを使用すると、開発者はより複雑な入力構成用にカスタム入力軸を定義できます。これは、ジョイスティックやゲームパッドなどのアナログ入力を処理する場合に便利です。入力軸には、'Input.GetAxis' または 'Input.GetAxisRaw' メソッドを使用してアクセスできます。

結論

これらは、Unity でキーボードとマウスの入力を実装するための基本的なテクニックの一部です。特定の要件に応じて、開発者は上記のメソッドを組み合わせ、さまざまなキーまたはマウス ボタンの入力を処理し、ゲームまたはアプリケーション内にカスタム インタラクションを実装できます。要件に基づいて、適切な更新メソッド (例: 'Update'、'FixedUpdate') 内で入力を処理してください。

おすすめの記事
アップデートと遅いアップデート
アップデートと固定アップデート
Unity のステートマシンの概要
Unity でインタラクティブなオブジェクトを作成する
Unity でのキネティック インタラクションの実装
Unity で特定のキーを使用して引き出しや食器棚を開ける
Unity のインベントリを使用しないピック アンド ドロップ システム