Version: 2020.1
public void Repaint ();

描述

重绘窗口。

\ 随机设置选定对象的旋转。

// Simple script that randomizes the rotation of the Selected GameObjects
// and lets you see which objects are currently selected

using UnityEngine; using UnityEditor;

public class RandomizeInSelection : EditorWindow { string selected = ""; public float rotationAmount = 0.33f;

[MenuItem("Example/Randomize Children In Selection")] static void Init() { RandomizeInSelection window = EditorWindow.GetWindow<RandomizeInSelection>(true, "Select Randomized Selected Objects"); window.ShowUtility(); }

void OnInspectorUpdate() { Repaint(); }

void OnGUI() { foreach (var transform in Selection.transforms) selected += transform.name + " ";

EditorGUILayout.LabelField("Selected Object:", selected);

selected = ""; if (GUILayout.Button("Randomize!")) RandomizeSelected();

if (GUILayout.Button("Close")) this.Close(); }

void RandomizeSelected() { foreach (var transform in Selection.transforms) { var rotation = Random.rotation; transform.localRotation = Quaternion.Slerp(transform.localRotation, rotation, rotationAmount); } } }