フローティングのユーティリティウィンドウとしてエディターウィンドウを表示します
ユーティリティウィンドウは必ず普通のウィンドウの前になり、ユーザーが別のアプリケーションに切り替えたとき非表示になります。
注意: ウィンドウを表示するためのこの関数を使用する前に EditorWindow.GetWindow() を使用する必要はありません。
"選択したオブジェクトの回転をランダムにできるフローティングウィンドウのユーティリティです。"
using UnityEditor; using UnityEngine; using System.Collections;
// Simple script that randomizes the rotation of the Selected GameObjects // and lets you see which objects are currently selected public class RandomizeInSelection : EditorWindow { public float rotationAmount = 0.33F; public string selected = ""; void RandomizeSelected() { foreach (var transform in Selection.transforms) { Quaternion rotation = Random.rotation; transform.localRotation = Quaternion.Slerp(transform.localRotation, rotation, rotationAmount); } } void OnGUI() { foreach (var t in Selection.transforms) { selected += t.name + " "; } EditorGUILayout.LabelField("Selected Object:", selected); selected = ""; if (GUILayout.Button("Randomize!")) RandomizeSelected(); if (GUILayout.Button("Close")) Close(); Debug.Log(selected); } void OnInspectorUpdate() { Repaint(); } [MenuItem("Example/Randomize Children In Selection")] static void RandomizeWindow() { RandomizeInSelection window = new RandomizeInSelection(); window.ShowUtility(); } }