【Unity】データバインディングでオーバーレイとEditorWindowを同期する
エディタ拡張でプレハブを配置するツールを作るのエディタウィンドウの値をオーバーレイで操作できるようにしてみました。 SerializedObjectにオーバーレイのVisualElementをバインドすることで、エディタ… 続きを読む »
エディタ拡張でプレハブを配置するツールを作るのエディタウィンドウの値をオーバーレイで操作できるようにしてみました。 SerializedObjectにオーバーレイのVisualElementをバインドすることで、エディタ… 続きを読む »
エディタ拡張でプレハブを簡単に配置するツールを作ってみました。 エディタウィンドウのアイコンでプレハブを選択できます。左クリックした位置にプレハブをインスタンス化します。 配置ツール プレハブと設定値が一つのデータにまと… 続きを読む »
エディタ拡張でDecal Projectorを簡単に配置するツールを作るのスクリプトを修正して、アイコンでプレハブを選択できるようにしてみました。 テクスチャのアスペクト比やタイリング、オフセットを適用して、ボタン上にテ… 続きを読む »
Decal Projectorを簡単に配置するエディタウィンドウを作ってみました。 概要 シーンビューを左クリックして、コライダーの面にDecal Projectorのプレハブを配置します。配置した後にドラッグするとイン… 続きを読む »
夜景のビルの窓にランダムでマテリアルを割り当てました。 スクリプト Editorフォルダーに新規C#スクリプトを作成します。 using UnityEngine; using UnityEditor; using Sys… 続きを読む »
ChatGPTに、GenericMenuのサンプルコードを作ってもらいました。 スクリプト using UnityEngine; using UnityEditor; public class GenericMenuEx… 続きを読む »
エディタウィンドウでオブジェクトのインスタンス化や破壊をした後に元に戻せるようにしてみました。 Undo(Ctrl + Z)を実装するには、Undo.RecordObjectメソッドの第一引数に変更予定のオブジェクトを渡… 続きを読む »
ScriptableSingletonを使って、スクリプトの再読み込みやプロジェクトの再起動してもエディタの状態が保存されるようにしてみました。 まずUnityマニュアルの以下のコードを使ってみます。https://do… 続きを読む »
エディタウィンドウのボタンをクリックしてその下にポップアップウィンドウを表示してみました。 ポップアップウィンドウは普通のエディタウィンドウと違って、ウィンドウの外をクリックした時などフォーカスが失われると自動的に閉じら… 続きを読む »
エディタウィンドウに簡単にレイヤーマスクを編集するフィールドを簡単に表示してみました。 レイヤーマスクの編集 カメラコンポーネント等はインスペクタにレイヤーマスクを編集できるドロップダウンが表示されます。 EditorG… 続きを読む »
カスタムエディタでシーンビューにバウンディングボックスを表示するのバウンディングボックスの中にあるゲームオブジェクトをエディタウィンドウを使って選択してみました。 エディタウィンドウを作る エディタウィンドウを作ってBo… 続きを読む »
エディタ拡張で、シーン上のゲームオブジェクトのマテリアルを一括で置換してみました。 エディタウィンドウで2つのマテリアルを指定し、片方のマテリアルが設定されたゲームオブジェクトがシーンにあれば、もう片方のマテリアルに置き… 続きを読む »
エディタ拡張でフォルダを折り畳んで階層表示するで、フォルダの横にトグルを表示して、トグルで選択したフォルダのパスだけを表示してみます。 エディタウィンドウを作る フォルダのパスを検索して階層構造にして表示するのは、前の記… 続きを読む »
Assetsフォルダにあるすべてのフォルダを検索して、階層表示してみました。サブディレクトリは折り畳めるようにしています。 折りたたみを表示する 折りたたみはEditorGUILayout.Foldoutメソッドで表示し… 続きを読む »
Assetsフォルダの条件にあうプレハブをエディタウィンドウに表示するでは、プレハブを検索するフォルダがAssetsフォルダに固定されていましたが、エディタウィンドウで検索するフォルダを指定できるようにしてみます。 今回… 続きを読む »