Unity3Dスクリプトのライフサイクル



Unity3d Script Life Cycle



説明:

写真は公式文書からのものです



可視オブジェクトとカメラのOnRenderObjectの両方が、カメラのOnPostRenderの後に実行されます




OnPreCullOnPreRender、OnPostRender、OnPostRender、OnRenderImageこれらのカメラだけがカメラを持っています


OnRenderObjectはアクティブなgoを実行し、シーン内のカメラと可視のgo関数はOnPostRenderの後に実行されます




OnBecameVisible可視go(レンダラーとアクティブ化されたgoを含む)の場合、スクリプトがハングアップしてこのメ​​ソッドを実装している限り、スクリプトが実行されます(スクリプトの前のフックがオフになっている場合も実行されます)。

カメラの実行位置がある場合カメラの中にありますOnPreCullその後、OnPreRenderの前に実行


OnWillRenderObject可視囲碁実行(カメラ囲碁は実行されません。視界がないため推定されます)、

2台のカメラと1台の目に見えるgoの場合、goのスクリプトはこれを書きました

次に、この関数は1つのループで2回実行されます(1つのループで)カメラごとに1回実行され、毎回実行されます。

特定の場所はカメラOnPreCullの後カメラOnPreRender






レンダリング

  • OnPreCull:この関数は、カメラがシーンを削除する前に呼び出されます。カメラに見えるオブジェクトは、拒否によって異なります。 OnPreCull関数呼び出しは、カリングの前に発生します。
  • OnBecameVisible / OnBecameInvisible:この関数は、オブジェクトがカメラに表示/非表示のときに呼び出されます。
  • OnWillRenderObject:オブジェクトが表示されている場合は、カメラごとに呼び出されます一度この関数。
  • OnPreRender:この関数は、カメラがシーンのレンダリングを開始する前に呼び出されます。
  • OnRenderObject:この関数は、通常のシーンレンダリングがすべて完了した後に呼び出されます。この時点で、GLクラスまたはGraphics.DrawMeshNowを使用してカスタムジオメトリを描画できます。
  • OnPostRender:この関数は、カメラがシーンのレンダリングを終了した後に呼び出されます。
  • OnRenderImage(Proバージョンのみ):この関数は、画面イメージを後処理するために、シーンのレンダリングが完了した後に呼び出されます。
  • OnGUI:この関数は、GUIイベントに応答してフレームごとに複数回呼び出されます。プログラムは、最初にレイアウトイベントと再描画イベントを処理し、次に各入力イベントのレイアウトイベントとキーボード/マウスイベントを処理します。
  • OnDrawGizmos視覚化の目的で、シーンビューに小さなアイコン(ギズモ)を描画するために使用されます。

参考資料:

1.イベント機能の実行順序 http://docs.unity3d.com/Manual/ExecutionOrder.html
2.ゲームマニアックユニティユーザードキュメント1.0 http://www.unitymanual.com/m/Manual/index.htm

転載:https://www.cnblogs.com/nafio/p/9137585.html