Version: 2020.1
言語: 日本語
リッチテキスト
メッセージシステム

イベントシステム

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

ゲームオブジェクトに Event System (イベントシステム) コンポーネントを追加すると、多くの機能が表示されていないことに気付くでしょう。これはイベントシステム自体がイベントシステムモジュール間の通信の管理と進行の機能として設計されているからです。

イベントシステムの主な役割は以下のとおりです。

  • どのゲームオブジェクトが選択されたかを管理
  • どの入力モジュールを使うかを管理
  • レイキャストの管理 (必要な場合)
  • 必要に応じて、すべての入力モジュールを更新

入力モジュール

Input Module (入力モジュール) は、イベントシステムをどのように動作させたいのかという主な論理の基礎となっており、以下のために使われます。

  • 入力の処理
  • イベントの状態の管理
  • シーンオブジェクトへのイベント送信

入力モジュールは、イベントシステム内で一度に 1 つだけアクティブにすることができます。また、Input Module コンポーネントは Event System コンポーネントと同じゲームオブジェクト上になければなりません。

カスタムの入力モジュールを作成したい場合は、Unity の既存の UI コンポーネントがサポートするイベントを送信します。独自のイベントを拡張して作成するには、メッセージシステム の ドキュメントを参照してください。

レイキャスター

Raycaster (レイキャスター) は、ポインターが何の上に重ねられているかを調べるために使用されます。入力モジュールがシーンの中でレイキャスターを設定し、ポインターがなにに重ねられているかを計算するのは、良くあることです。

デフォルトでは 3 つのレイキャスターが設けられています。

シーンで 2D/3D のレイキャスターを設定している場合は、UI 以外の要素に Input Module からメッセージを受信させることは簡単です。イベントインターフェースの 1 つを実装するスクリプトをアタッチするだけで行えます。この例は、IPointerEnterHandlerIPointerClickHandler のスクリプティングリファレンスページを参照してください。

リッチテキスト
メッセージシステム