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

関連記事

Photogrammetry (写真測量法)

ブログをGoogle App EngineからAmazon ...

株式会社ヘキサドライブの研究室ページ

Mean Stack開発の最初の一歩

Deep Learningとその他の機械学習手法の性能比較

Raytracing Wiki

映画から想像するVR・AR時代のGUIデザイン

OpenCVでiPhone6sのカメラをキャリブレーションす...

ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...

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

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

機械学習手法『Random Forest』

Gource:バージョン管理の履歴を可視化するツール

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

mentalrayのSubsurface Scatterin...

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

まだ続くブログの不調

Composition Rendering:Blenderに...

Mayaでリアルな布の質感を作るチュートリアル

レンダラ制作はOpenGL とか DirectX を使わなく...

リニアアクチュエータ

Seleniumを使ったFXや株の自動取引

3D復元技術の情報リンク集

ZBrushのお勉強

白組による『シン・ゴジラ』CGメイキング映像が公開された!

IronPythonを使ってUnity上でPythonのコー...

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

ZBrushのキャンバスにリファレンス画像を配置する

Mitsuba 3:オープンソースの研究向けレンダラ

iPhoneアプリ開発 Xcode 5のお作法

参考になりそうなサイト

「ベンジャミン·バトン数奇な人生」でどうやってCGの顔を作っ...

ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...

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

オープンソースの物理ベースGIレンダラ『appleseed』

Arduinoで人感センサーを使う

Blender 2.8がついに正式リリース!

Zibra Liquids:Unity向け流体シミュレーショ...

Human Generator:Blenderの人体生成アド...

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

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

ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調...

コメント