Name | Description |
---|---|
scale | The value the user can modify. |
position | The position of the handle. |
direction | The direction of the handle. |
rotation | The rotation of whole object. |
size | The size of the handle. |
snap | The new value after the user has modified it. Note: Use HandleUtility.GetHandleSize where you might want to have constant screen-sized handles. |
Make a directional scale slider
Scale slider handle in the Scene View.
// Increase/decrease a value just by moving the Scale slider Handle
@CustomEditor (FreeScale)
class FreeScaleHandleJS extends Editor {
function OnSceneGUI () {
target.val = Handles.ScaleSlider(target.val,
target.transform.position,
Vector3.up,
Quaternion.identity,
5,
HandleUtility.GetHandleSize(target.transform.position));
if (GUI.changed)
EditorUtility.SetDirty (target);
}
}
And the script attached to this handle:
// FreeScale.js
@script ExecuteInEditMode()
var val : float = 1;
function Update () {
Debug.Log("Value tied to the slider: " + val);
}