yield return null と WaitForEndOfFrame の違い
どちらも、次のフレームで再開という感じだけど、タイミングが微妙に違うみたい。
Unity - マニュアル: イベント関数の実行順
ここにある、関数のフローチャートを拝借。
該当部分を抜粋
たぶん、これが再開される位置なんだと思う。
yield return nullは、レンダリングされる前。Game logic
WaitForEndOfFrameは、レンダリングされた後。End of frame
なので、
レンダリング前に再開したい場合 = yield return null
レンダリング後に再開したい場合 = WaitForEndOfFrame
レンダリングってなんやねん?
図を見るとScene / Gizmo / GUI とあるみたい。
Sceneは、たぶんライトやらテクスチャやらのことじゃないかと。
Gizmoは、どうやらドロー描画のことっぽい。
GUIは、インターフェースかな。Canvasの部分やと思う。
レンダリングの後ということは、レンダリングに必要な情報が全て揃った状態なので、そういう情報を扱いたい場合はWaitForEndOfFrameを使う。
って感じかな。
以上。