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

関連記事

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

BlenderのGeometry Nodeで遊ぶ

自前Shaderの件 解決しました

pythonもかじってみようかと

ZBrushで仮面ライダーBLACK SUNを作る 頭部~バ...

CGWORLD CHANNEL 第21回ニコ生配信は『シン・...

UnityのGlobal Illumination

CGレンダラ研究開発のためのフレームワーク『Lightmet...

OpenCV3.3.0でsfmモジュールのビルドに成功!

映画『ブレードランナー 2049』のVFX

ドラマ『ファーストクラス』のモーショングラフィックス

C++始めようと思うんだ

Amazon Web ServicesでWordPress

書籍『OpenCV 3 プログラミングブック』を購入

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

Blender 2.81でIntel Open Image ...

Digital Emily Project:人間の顔をそっく...

BlenderのPython環境にPyTorchをインストー...

ポイントクラウドコンソーシアム

AMIMOTO(PVM版)で作成したインスタンスをAMIMO...

CGALDotNet:計算幾何学ライブラリ CGALのC#ラ...

画像生成AI Stable Diffusionで遊ぶ

『パシフィック・リム: アップライジング』のVFXブレイクダ...

Phongの表現力パネェ 材質別のPhong Shader用...

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

OpenCV 3.3.0-RCでsfmモジュールをビルド

ZBrush 2018での作業環境を整える

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

UnityでLight Shaftを表現する

サンプルコードにも間違いはある?

ZBrushでメカ物を作るチュートリアル動画

ZBrushでゴジラ2001を作ってみる 身体のシルエット出...

JavaScriptとかWebGLとかCanvasとか

bpy-renderer:レンダリング用Pythonパッケー...

『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイク...

openMVG:複数視点画像から3次元形状を復元するライブラ...

MRenderUtil::raytrace

ZBrushのお勉強

SVM (Support Vector Machine)

Dlib:C++の機械学習ライブラリ

OANDAのfxTrade API

Google App Engineのデプロイ失敗

コメント