PROFESSIONAL GAME CREATOR SCHOOL G学院 用語集

OFFICIAL SITEへ戻る

MonoBehaviour

 MonoBehaviourとは、Unityプログラミングにおいて用いられる全てのクラス基底クラス(親クラス)となるクラスです。もともとUnity上で定義されているクラスであり、プログラマはここから派生して様々な派生クラス(子クラス)を作製します。Scriptコンポネントにおけるソースコード上でのコーディングは、MonoBehaviourをベースとしたクラスを作製することが主な作業となります。
 クラスは、MonoBehaviourを継承することでコンポネントとして使用することができます。 実際には、隠れてObject、Component、Behaviourというクラスが存在します。
これらの関係は、以下のような継承関係にあります。
 Object→Component→Behaviour→MonoBehaviour

全ての機能を持った継承したMonoBehaviourをベースとしてクラスを設計しています。
継承前のクラス達を直接扱う機会は恐らくあまりないです。MonoBehaviourクラスには、AwakeStartUpdate実装されており、これらのメソッドは特定のタイミングで呼び出されます。 メソッドの機能は、プログラマクラスに合わせて上書き(オーバーライド)して使用しています。
また、MonoBehaviourを継承することで、「特定の処理を中止し、指定した時間経過した後にそこから再開する」というコルーチンと呼ばれる機能を用いることができます。

Unityでは、MonoBehaviourを継承しないクラスを作製することも可能です。
 Componentクラスを継承したMonoBehaviourクラスを継承しなければコンポネントとしてゲームオブジェクトに紐づける(アタッチ)することはできませんが、作製すること自体は可能です。
Hierarchyウィンドウ上に実体が無い場合や、前述のAwakeStartUpdateといったUnityが自動で実行するメソッドが必要ない場合には、継承の必要は無いといえます。

用語集一覧へ戻る