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)けど、最近は公式でこんなにわかりやすく図を載せてるのね。

関連記事

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

トランスフォーマーの変形パターンを覚えるのは楽しいと思うんだ

Webサイトのワイヤーフレームが作成できるオンラインツール

ジュラシック・パークのメイキング

Deep Fluids:流体シミュレーションをディープラーニ...

ZBrush 2021.6のMesh from Mask機能...

Photogrammetry (写真測量法)

オープンソースの顔認識フレームワーク『OpenBR』

OpenGVの用語

OpenMayaRender

OpenCVでカメラ画像から自己位置認識 (Visual O...

Unityの薄い本

ZBrushからBlenderへモデルをインポート

FreeMoCap Project:オープンソースのマーカー...

OpenCV 3.1のsfmモジュールのビルド再び

WinSCP

立体視を試してみた

Maya には3 種類のシェーダSDKがある?

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

ゴジラ(2014)のメイキング

『ローグ・ワン/スター・ウォーズ・ストーリー』"あのキャラク...

Blendify:コンピュータービジョン向けBlenderラ...

NumSharp:C#で使えるNumPyライクな数値計算ライ...

参考書

マルコフ連鎖モンテカルロ法

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

OpenVDB:3Dボリュームデータ処理ライブラリ

Kornia:微分可能なコンピュータービジョンライブラリ

Windows10でPyTorchをインストールしてVSCo...

ZBrush キャラクター&クリーチャー

フリーのUV展開ツール Roadkill UV Tool

SIGGRAPH論文へのリンクサイト

COLMAP:オープンソースのSfM・MVSツール

Google App Engine上のWordPressでA...

PeopleSansPeople:機械学習用の人物データをU...

『PIXARのひみつ展』に行ってきた

PythonのHTML・XMLパーサー『BeautifulS...

写真に3Dオブジェクトを違和感無く合成する『3DPhotoM...

オープンソースのテクスチャマッピングシステム『Ptex』

『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイ...

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

Super Resolution:OpenCVの超解像処理モ...

コメント