MonoBehaviour クラスは基本クラスで、デフォルトで、このクラスからすべての Unity スクリプトが派生します。Unity の Project ウィンドウから C# スクリプトを作成すると、自動的に MonoBehaviour を継承し、テンプレートスクリプトが提供します。これについての詳細は、スクリプトの作成と使用 を参照してください。
MonoBehaviour クラスは、エディター内の ゲームオブジェクトにスクリプトをアタッチするためのフレームワークを提供するとともに、Start やUpdate などの便利なイベントへのフックを提供します。
MonoBehaviour クラスのすべてのメンバーの完全なリファレンスとその技術的な詳細については、MonoBehaviour スクリプトリファレンス を参照してください。
When you select a script in the Project window, the Inspector displays some basic information about that script asset, including the name of the assembly it belongs to, and a preview of the contents of the script.
Note: Although the Inspector displays the contents of the script, you can’t edit the script in the Inspector window.
The script inspector also displays two buttons, Open and Execution Order.
The Open button opens the script in the currently configured External Script Editor (also known as an Integrated Development Environment, or IDE). The Open button performs the same function as double-clicking the script in the Project window. You can configure which external editor Unity uses to open your scripts in the External Tools section of the Preferences window.
The Execution Order button opens the Script Execution Order section of the Project Settings window, which allows you to alter the the order in which Unity executes your scripts.
If you define public Object fields that can be assigned in the Editor in your MonoBehaviour script, you can set up default references for these fields. The default reference fields are visible in the inspector when you select the script asset in the Project window.
In the example above, there are three public Audio Clip fields, without default references assigned. You could assign audio clips to each of the AudioClip default reference fields.
If you assign default references, they are applied when you add your MonoBehaviour as a component to a GameObject, or when you reset an existing instance of your MonoBehaviour on a GameObject to its default values.
Note: There is no ongoing link between the references on MonoBehaviour instances on GameObjects and the default references. This means if you change the default references, they are not automatically updated on existing GameObjects.
Other types of inspector-editable fields that do not inherit from UnityEngine.Object
(for example, public string or int fields) do not have default fields in the inspector. Instead, they take their default values from the script itself.
MonoBehaviour クラスでは、コルーチンを開始、停止、管理することができます。コルーチンとは、他のコードの実行を継続させながら、一定時間を待機したり特定のアクションの完了を待つなど、非同期のコードを記述する方法です。
コルーチンの詳細については、コルーチン と スクリプトリファレンスの StartCoroutine を参照してください。
MonoBehaviour クラスは、イベントメッセージの大規模なコレクションへのアクセスを提供します。これにより、プロジェクトで現在発生していることに基づいてコードを実行することができます。ここでは、より一般的な例をいくつかご紹介します。すべてのリストについては、MonoBehaviour のスクリプトリファレンス の Messages のセクションを参照してください。
Start
- ゲームオブジェクトの存在しはじめ (シーンがロードされたとき、またはゲームオブジェクトがインスタンス化されたとき) に呼び出されます。
Update
- フレームごとに呼び出されます。
FixedUpdate
- 物理の時間ステップごとに呼び出されます。
OnBecameVisible
と OnBecameInvisible
- ゲームオブジェクトのレンダラーがカメラのビューに入ったり出たりするときに呼び出されます。
OnCollisionEnter
と OnTriggerEnter
- 物理的な衝突やトリガーが発生するときに呼び出されます。
OnDestroy
- ゲームオブジェクトが破壊されるときに呼び出されます。
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.