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

関連記事

WordPress on Google App Engine...

VGGT:マルチビュー・フィードフォワード型3Dビジョン基盤...

オープンソースの取引プラットフォーム

Unity Scriptコーディング→Unreal Engi...

参考書

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

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

書籍『仕事ではじめる機械学習』を読みました

BlenderProc:Blenderで機械学習用の画像デー...

日立のフルパララックス立体ディスプレイ

Python for Unity:UnityEditorでP...

ZBrushトレーニング

MB-Lab:Blenderの人体モデリングアドオン

ZBrushでアヴァン・ガメラを作ってみる 口内の微調整・身...

映画『シン・仮面ライダー』 メイキング情報まとめ

Point Cloud Utils:Pythonで3D点群・...

OpenCV 3.1のsfmモジュールを試す

チャットツール用bot開発フレームワーク『Hubot』

ZBrushでアヴァン・ガメラを作ってみる 歯を配置

OpenCV バージョン4がリリースされた!

Oculus Goを購入!

Swark:コードからアーキテクチャ図を作成できるVSCod...

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

ZBrushでゴジラ2001を作ってみる 身体のアタリを作る

Google App EngineでWordPress

OpenMayaRender

世界一下品なクマと世界一紳士なクマ

cvui:OpenCVのための軽量GUIライブラリ

pythonもかじってみようかと

Mayaのポリゴン分割ツールの進化

AnacondaとTensorFlowをインストールしてVi...

PyTorch3D:3Dコンピュータービジョンライブラリ

ZBrushでゴジラ2001を作ってみる 姿勢の変更

Composition Rendering:Blenderに...

ラクガキの立体化 胴体の追加

BlenderのRigifyでリギング

書籍『メイキング・オブ・ピクサー 創造力をつくった人々』を読...

今年もSSII

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

天体写真の3D動画

Mechanizeで要認証Webサイトをスクレイピング

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

コメント