Unity自分用メモ。List型の入力フィールドを描画する(インスペクタ拡張の場合)インスペクタ拡張の場合はEditorGUILayout.PropertyField()の第二引数をtrueにするだけで、あとは他のプロパティ描画方法と同様。List型の入力フィールドを描画する(EditorWindowの場合)EditorWindowはScriptableObjectの派生クラスなのでSerializeFieldな変数を定義できる。あとは自身のScriptableObjectを取得してEditorGUILayout.PropertyField()で描画するだけ。});menu.ShowAsContext();Sceneビューがクリックされたことを検知するMonoBehaviourのOnDrawGizmosでやる場合。}}Inspectorでコンポーネントを右クリックしたときのメニューを追加するlight11.hatenadiary.comMenuItemにショートカットキー(ホットキー)を設定するlight11.hatenadiary.com特定の型のアセットのみを取得エディタでのみ使う設定ファイルをScriptableObjectで作るときなどに使用します。AssetDatabase.FindAssets()を利用するのがポイント。Value"のようにインスペクタに表示されるときのケースに変換する。ObjectNames.NicifyVariableName("_someValue")アイコン付きのプロパティを描画するひとまずEditorGUIのみ。includeChildren);}使い方はこんな感じ。Debug.Log("clicked"));フォルダが無かったら作るUnity内外どっちにも対応。UnityのAPIで作ると親フォルダが無かったらエラーになったり色々と面倒なのでC#の機能を使う。AssetDatabase.Refresh();#endif}空フォルダだったら削除する(親も含めて再帰的に判定)指定したフォルダが空フォルダだったら削除する。その結果として親フォルダも空フォルダになったら削除する。これを再帰的に処理する。Debug.Log("Hierarchy上にあります");}オブジェクトがAssetかどうか調べる前節に関連して。Debug.Log("Assetです");}EditorWindowを開く際に他のウィンドウとドッキングする下記のようにGetWindow()の引数にドッキングしたいWindowの型を渡します。}}さらにWindowを並べて表示したりサイズを変更したりしたいところですが現状難しそうです。内部的にはDockAreaクラスを使ってやってそうです。matchAssetPath.Value;バイト配列を文字列に変換する表示用に。result.ToString();}DateTime型を文字列に変換DateTime型をシリアライズするときに使う。1はてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。