Version: 2019.3
Unity での C# コードのデバッグ

Event System

EventSystem はキーボード、マウス、タッチやカスタムの入力に基づいて、アプリケーション内のオブジェクトにイベントを送信する方法です。EventSystem はイベントを送信するために協調する、いくつかのコンポーネントで構成されています。

あなたがゲームオブジェクトに EventSystem コンポーネントを追加するとき、それは多くの機能が露出していないことに気付くでしょう。これは EventSystem 自身が EventSystem モジュール間の通信の管理者と進行役として設計されているからです。

EventSystem の主な役割は以下のとおりです。

  • どのゲームオブジェクトを選択するかを管理
  • どの InputModule を使うかを管理
  • Raycast 使用の管理(必要な場合)
  • 必要に応じて、すべての InputModule を更新

Input Modules

An Input Module is where the main logic of how you want the Event System to behave lives, they are used for:

  • 入力の取り扱い
  • イベントのステート管理
  • シーンオブジェクトにイベントを送信。

InputModule は、一度に一つだけ EventSystem をアクティブにすることができます。また、InputModule コンポーネントは、EventSystem コンポーネントと同じゲームオブジェクト上になければなりません。

If you want to write a custom Input Module, send events supported by existing UI components in Unity. To extend and write your own events, see the Messaging System documentation.


Raycasters are used for figuring out what the pointer is over. It is common for Input Modules to use the Raycasters configured in the Scene to calculate what the pointing device is over.

デフォルトでは 3 つの Raycaster が設けられています。

If you have a 2d / 3d Raycaster configured in your Scene, it is easy to make non-UI elements receive messages from the Input Module. Simply attach a script that implements one of the event interfaces. For examples of this, see the IPointerEventHandle and IPointerClickHandler Scripting Reference pages.

Unity での C# コードのデバッグ