イベントシステムはキーボード、マウス、タッチやカスタムの入力に基づいて、アプリケーション内のオブジェクトにイベントを送信する方法です。イベントシステムはイベントを送信するために協調する、いくつかのコンポーネントで構成されています。
ゲームオブジェクトに Event System (イベントシステム) コンポーネントを追加すると、多くの機能が表示されていないことに気付くでしょう。これはイベントシステム自体がイベントシステムモジュール間の通信の管理と進行の機能として設計されているからです。
イベントシステムの主な役割は以下のとおりです。
Input Module (入力モジュール) は、イベントシステムをどのように動作させたいのかという主な論理の基礎となっており、以下のために使われます。
入力モジュールは、イベントシステム内で一度に 1 つだけアクティブにすることができます。また、Input Module コンポーネントは Event System コンポーネントと同じゲームオブジェクト上になければなりません。
カスタムの入力モジュールを作成したい場合は、Unity の既存の UI コンポーネントがサポートするイベントを送信します。独自のイベントを拡張して作成するには、メッセージシステム の ドキュメントを参照してください。
Raycaster (レイキャスター) は、ポインターが何の上に重ねられているかを調べるために使用されます。入力モジュールがシーンの中でレイキャスターを設定し、ポインターがなにに重ねられているかを計算するのは、良くあることです。
デフォルトでは 3 つのレイキャスターが設けられています。
シーンで 2D/3D のレイキャスターを設定している場合は、UI 以外の要素に Input Module からメッセージを受信させることは簡単です。イベントインターフェースの 1 つを実装するスクリプトをアタッチするだけで行えます。この例は、IPointerEnterHandler と IPointerClickHandler のスクリプティングリファレンスページを参照してください。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.