エディタ拡張
Texture2D で動的に生成したテクスチャを png 形式で保存、その後すぐアセットとしてスクリプトで扱いたい場合が結構あるのですが、クラスやメソッドによってパスの扱い方に差があったりして結構めんどうなのでスニペットを置いておきます。
カスタムエディターを作成しているときに、クリックやマウス移動やキー入力などをシーン中の操作(ショートカット)とは別に実装を行いたい場合があります。 例えば、シーンビューでオブジェクト選択中に R キーを押すと回転を調節するハンドラに切り替わり…
表題とおり、エディタ拡張ツールをUnityAssetStoreでリリースしました。 AssetStore では初リリースプロダクトです。 TextコンポーネントやImasgeコンポーネントを手書きっぽく表示されることができます。 "書き順を再現できる" と言えばわかりやすいか。 as…
EditorWindow を作ると、タブに表示される名前がデフォルトだと namespace を含めたクラス名になる 変更したい場合は GetWindow の引数に title を指定する // ウインドウを作成 MyEditorWindow window = (MyEditorWindow)EditorWindow.GetWindow( t: typeof…
エディタ拡張で、ある命名規則で自動でフォルダ作ったりする場合にどうするか調べました。
エディタスクリプト内で EditorApplication.EnterPlaymode 関数を呼び出すことで、 任意のタイミングでPlayモードに入ることができます。 前回やったインスペクタのボタンと組み合わせ、 ボタンを押したらエディタで前処理してPlay開始ということが可能にな…
下のようなかんじでインスペクタにボタンを表示させ、 押したときに MonoBehaviour の任意の関数を実行させる。
PrefabUtility 使えば楽勝やろ(鼻ホジー)と思ってたらハマった。 さてどうやろう PlayMode中にシーン内のインスタンスの元プレハブを取得する PlayMode中のプレハブ関係 解 : SaveAsPrefabAsset
端末でのデバッグ中に、各種パラメータ値を書き換えられるデバッグ用シーンを入れてビルドしてテストしたりすると思いますが、リリースしたいときにBuild Settings からシーン外したりするの手間なので、メニューから一発でやる方法を考えました。
エディタ拡張書いたときに、プレハブの値を読むのは以下の記事の方法でできる。 indie-du.com 読んだ上で 書き換える には一工夫必要になる。
エディタウインドウを自作したときに、EditorGUILayout.ObjectField で受けたプレハブ情報を保存しておく場合の方法。
Textureからピクセルデータを取得したく、 Texture2D#GetPixels を使って以下のように読み出そうと試みた。
エディタウインドウ作成方法をよく忘れるのでメモ