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