rotation | Orientation of the handle. |
position | Center of the handle in 3D space. |
Quaternion The modified rotation
Note: Use HandleUtility.GetHandleSize where you might want to have constant screen-sized handles.Make a Scene view rotation handle.
This will behave like the built-in rotation tool in Unity. If you have assigned something to Undo.SetSnapshotTarget, it will work fully with Undo.
//Create a rotation handle at (0,0,0) and rotate any object that has "RotateAtPoint.js" // attached from 0,0,0. @CustomEditor (RotateAtPoint) class RotationHandleJS extends Editor { function OnSceneGUI () { target.rot = Handles.RotationHandle (target.rot, Vector3.zero); if (GUI.changed) EditorUtility.SetDirty (target); } }
And the script attached to this handle:
// RotateAtPoint.js // This Script has to be outside of the editor folder. // // Usage: Just Place this script on the object you want to work the handle with. // And control the Object's rotation from the handle that appears at 0,0,0 when // This object is selected. @script ExecuteInEditMode() var rot : Quaternion = Quaternion.identity; function Update () { transform.rotation = rot; }