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

関連記事

OpenGVの用語

VCG Library:C++のポリゴン操作ライブラリ

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

天体写真の3D動画

pythonの機械学習ライブラリ『scikit-learn』

ZBrushでアヴァン・ガメラを作ってみる 歯茎を別パーツへ...

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

ZBrushで仮面ライダー3号を造る 仮面編 ClipCur...

AndroidもopenGLも初心者さ (でもJavaは知っ...

Raspberry Pi 2のGPIOピン配置

Google App Engineのデプロイ失敗

Mean Stack開発の最初の一歩

手を動かしながら学ぶデータマイニング

ZBrushでアヴァン・ガメラを作ってみる 爪とトゲを追加

TensorSpace.js:ニューラルネットワークの構造を...

Raspberry Pi 2を買いました

映画『ジュラシック・ワールド』のVFXメイキング

Windows Server 2008にAutodesk M...

『シン・ゴジラ』のコンセプトアニメーションのメイキング動画が...

ZBrushでアヴァン・ガメラを作ってみる 腕の作り込み

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

ゴジラの造形

ZBrushで仮面ライダー3号を造る 仮面編 ZRemesh...

PolyPaint

Google Chromecast

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

openMVGをWindows10 Visual Studi...

なんかすごいサイト

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

Pythonの自然言語処理ライブラリ『NLTK(Natura...

海外ドラマのChromaKey

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

mentalrayのSubsurface Scatterin...

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

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『...

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

機械学習に役立つPythonライブラリ一覧

ラクガキの立体化 目標設定

MPC社によるゴジラ(2014)のVFXブレイクダウン

自前Shaderの件 解決しました

ZBrushで仮面ライダー3号を造る 仮面編 失敗のリカバー

Google App EngineでWordPress

コメント