controlID | The control ID for the handle. |
position | The world-space position of the handle's start point. |
rotation | The rotation of the handle. |
size | The size of the handle in world-space units. |
Draw a cube. Pass this into handle functions.
Note: Use HandleUtility.GetHandleSize if you want the handle to always remain the same size on the screen.
Cube Cap on the Scene view.
To use this example, save this script into the Assets/Editor folder:
#pragma strict @CustomEditor(DummyCubeCap) public class CubeCapEditor extends Editor { public var cubeSize: float = 1; function OnSceneGUI() { var t: DummyCubeCap = target as DummyCubeCap; Handles.color = Color.red; Handles.CubeCap(0, t.transform.position + new Vector3(5, 0, 0), t.transform.rotation, cubeSize); Handles.color = Color.green; Handles.CubeCap(0, t.transform.position + new Vector3(0, 5, 0), t.transform.rotation, cubeSize); Handles.color = Color.blue; Handles.CubeCap(0, t.transform.position + new Vector3(0, 0, 5), t.transform.rotation, cubeSize); } }
using UnityEngine; using UnityEditor;
[CustomEditor( typeof( DummyCubeCap ) )] public class CubeCapEditor : Editor { public float cubeSize = 1;
void OnSceneGUI( ) { DummyCubeCap t = target as DummyCubeCap;
Handles.color = Color.red; Handles.CubeCap( 0, t.transform.position + new Vector3( 5, 0, 0 ), t.transform.rotation, cubeSize );
Handles.color = Color.green; Handles.CubeCap( 0, t.transform.position + new Vector3( 0, 5, 0 ), t.transform.rotation, cubeSize );
Handles.color = Color.blue; Handles.CubeCap( 0, t.transform.position + new Vector3( 0, 0, 5 ), t.transform.rotation, cubeSize ); } }
... and attach this script to the object you'd like to view CubeCaps on:
#pragma strict @ExecuteInEditMode public class DummyCubeCap extends MonoBehaviour { public function Start() { Debug.Log("I have CubeCap Handles attached to this transform!"); } }
using UnityEngine;
[ExecuteInEditMode] public class DummyCubeCap : MonoBehaviour { public void Start( ) { Debug.Log( "I have CubeCap Handles attached to this transform!" ); } }