Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番

Unity関連のメモ。

UnityのScriptはMonoBehaviorクラスを継承して、オーバーライド関数を使って自前の機能を実装するわけだけど、それぞれの関数が呼ばれる順番を把握していないと、思わぬところで衝突してバグになる。
ちなみに、よく使う主なオーバーライド関数は以下。

Invoke() 設定したメソッドを、設定した秒数後に、一度だけ呼び出される。
Awake() スクリプトが読み込まれる時に、一度だけ呼び出される。

OnMouse◯◯()系 マウスが乗った時等に呼び出される。
OnTrigger◯◯()系 トリガー状態のオブジェクトとの衝突状態によって呼び出される。
OnCollision◯◯()系 オブジェクトの衝突状態によって呼び出される。
OnControllerColliderHit() キャラクターコントローラーの衝突の際に呼び出される。
OnEnable() オブジェクトが有効状態になった時に一度呼び出される。
OnDestroy() オブジェクトが破棄される直前に呼び出される。
OnApplicationQuit() アプリの終了直前に呼び出される。
OnGUI() GUIの描画やイベントを処理する関数。

http://qiita.com/hiroyuki_hon/items/0718a50e6569b6c5037a



そして、こちらはMonoBehaviorクラスのオーバーライド関数が呼び出される順番を図示したもの。(Unityの公式ドキュメントより)

Unity MonoBehaviour Lifecycle

以前は有志が図示したりしてた(Unity3D MonoBehaviour Lifecycle)けど、最近は公式でこんなにわかりやすく図を載せてるのね。

関連記事

ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救出

BSDF: (Bidirectional scattering distribution funct...

WordPressの表示を高速化する

続・ディープラーニングの資料

3DCG Meetup #4に行ってきた

Mayaのシェーディングノードの区分

ハリウッド版「GAIKING」パイロット映像

WordPressプラグインの作り方

Human Generator:Blenderの人体生成アドオン

顔モデリングのチュートリアル

UnityでTweenアニメーションを実装できる3種類の無料Asset

第1回 3D勉強会@関東『SLAMチュートリアル大会』

3DCGのモデルを立体化するサービス

Windows Server 2008にAutodesk Maya 2009をインストール

iPhone x ロボットハッカソン~RomoのiPhone用SDKで目覚ましアプリを作る~

映画『シン・ウルトラマン』 メイキング記事まとめ

Pylearn2:ディープラーニングに対応したPythonの機械学習ライブラリ

Unreal Engine Tokyo MeetUp!へ行ってきた

ニューラルネットワークで画像分類

ZBrushのハードサーフェイス用ブラシ

ZBrushで仮面ライダー3号を造る 仮面編 Clay Polish

書籍『The Art of Mystical Beasts』を購入

TensorFlowでCGを微分できる『TensorFlow Graphics』

MFnDataとMFnAttribute

科学技術計算向けスクリプト言語『Julia』

ラクガキの立体化 1年半ぶりの続き

ZBrushのZmodelerとDynamic Subdivisionを学ぶ

仮想関数

OpenCVで顔のランドマークを検出する『Facemark API』

Unreal Engineの薄い本

ラクガキの立体化 モールドの追加

スクレイピング

OpenMVSのサンプルを動かしてみる

ZBrush用トポロジー転送プラグイン『ZWrap Plugin for ZBrush』

Runway ML:クリエイターのための機械学習ツール

トランスフォーマー/ロストエイジのメイキング

ArUco:OpenCVベースのコンパクトなARライブラリ

ZBrushのTranspose Masterでポーズを付ける

SIGGRAPH 2020はオンライン開催

MRenderUtil::raytrace

UnrealCLR:Unreal Engineで.NET Coreを利用できるプラグイン

Quartus II

コメント