Look up or set the Color of the handles.
Magenta slider that points to 0,0,0.
To use this example, save this script in your Assets/Editor folder:
#pragma strict @CustomEditor(SliderHandle) public class SliderHandleEditor extends Editor { // allows you to drag a 'look at' point along the X axis function OnSceneGUI() { var t: SliderHandle = target as SliderHandle; // Set the colour of the next handle to be drawn: Handles.color = Color.magenta; EditorGUI.BeginChangeCheck(); var lookTarget: Vector3 = Handles.Slider(t.lookTarget, new Vector3(1, 0, 0), 0.25f, Handles.ConeCap, 0.01f); if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(target, "Changed Slider Look Target"); t.lookTarget = lookTarget; t.Update(); } } }
using UnityEngine; using UnityEditor;
[CustomEditor( typeof( SliderHandle ) )] public class SliderHandleEditor : Editor { // Simple script that creates a Slide Handle that // allows you to drag a 'look at' point along the X axis
void OnSceneGUI( ) { SliderHandle t = target as SliderHandle;
// Set the colour of the next handle to be drawn: Handles.color = Color.magenta;
EditorGUI.BeginChangeCheck( ); Vector3 lookTarget = Handles.Slider(t.lookTarget, new Vector3(1, 0, 0), 0.25f, Handles.ConeCap, 0.01f);
if( EditorGUI.EndChangeCheck( ) ) { Undo.RecordObject( target, "Changed Slider Look Target" ); t.lookTarget = lookTarget; t.Update( ); } }
}
...and place this script on the GameObject you wish to place the Slider Handle on.
#pragma strict @ExecuteInEditMode public class SliderHandle extends MonoBehaviour { public var lookTarget: Vector3 = new Vector3(0, 2, 0); public function Update() { transform.LookAt(lookTarget); } }
using UnityEngine;
[ExecuteInEditMode] public class SliderHandle : MonoBehaviour { public Vector3 lookTarget = new Vector3( 0,2,0 );
public void Update( ) { transform.LookAt( lookTarget ); } }