UnityEditorで特定のタイミングに処理を差し込むのに使用またはテストしたものを随時記載(ほぼ自分用)
※MonobehaviourのAwakeやStart等はMonobehaviourのリファレンスを見れば全部わかるので省略
※使用例もリファレンス見れば載ってるので一覧のみ
※Unityスクリプトリファレンス⇒(http://docs.unity3d.com/ja/current/ScriptReference/index.html)
delegate系
-
UnityEditor.EditorApplication.playmodeStateChanged
- Editor上での実行を再生/停止/一時停止した際に呼ばれる
- 編集したパラメータを使用して一時データを再計算する際に使用
-
UnityEditor.Undo.undoRedoPerformed
- Undo/Redoした後に呼ばれる
- Undo/Redoで戻したパラメータを使用して一時データを再計算する際に使用
-
UnityEditor.PrefabUtility.prefabInstanceUpdated
- PrefabをApplyした後に呼ばれる
- Prefabを更新・保存したパラメータを元に一時データを再計算する際に使用
-
UnityEditor.EditorUserBuildSettings.activeBuildTargetChanged
- SwitchPlattformした際に呼ばれる
- Resources等のアプリ内に含まれるデータをプラットフォーム毎に差し替える為に使用
Attribute系
-
[UnityEditor.Callbacks.PostProcessScene(0)]
- シーンのロード後に呼ばれ、プレイヤービルドした際はビルドするシーンの数だけ呼ばれる
- シーンロード時のログ出力ぐらいにしか用途がないような・・・
- static関数でないとエラー扱い
- Attributeの引数は処理順序
-
[UnityEditor.Callbacks.PostProcessBuild(0)]
- プレイヤービルドした際に呼ばれる
- Plugin等のプラットフォーム依存の処理を行う際に使用
- static関数でないとエラー扱い
- 関数の引数は2つ(BuildTarget target, string pathToBuiltProject)
- Attributeの引数は処理順序
余談
Handlesのアンカーをホールド・リリースした際のコールバックが欲しいのだが・・・
ControlIDやらEventやら検知しないと出来ないらしいがMouseUp,MouseDownがHandlesのアンカー上では検知できず難航中
Handlesを操作する前に検知すればとれました