controlID | ハンドルのコントロール ID |
position | ハンドルを開始するワールドスペースの位置 |
rotation | ハンドルの回転 |
size | ワールドスペースユニットでのハンドルのサイズ |
カメラに面している円を描き、これをハンドル関数に渡します。
注意: 画面サイズに対して固定サイズのハンドルを持ちたい場合、 HandleUtility.GetHandleSize を使用します。
" シーンビューの Circle Cap "
この例を使用するには、このスクリプトを Assets/Editor フォルダーに置きます。
このハンドルにアタッチしているスクリプト
using UnityEngine; using UnityEditor;
[CustomEditor( typeof( DummyCircleCap ) )] public class CircleCapEditor : Editor { public float circleSize = 1;
void OnSceneGUI( ) { DummyCircleCap t = target as DummyCircleCap;
Handles.color = Color.red; Handles.CircleCap( 0, t.transform.position + new Vector3( 5, 0, 0 ), t.transform.rotation, circleSize );
Handles.color = Color.green; Handles.CircleCap( 0, t.transform.position + new Vector3( 0, 5, 0 ), t.transform.rotation, circleSize );
Handles.color = Color.blue; Handles.CircleCap( 0, t.transform.position + new Vector3( 0, 0, 5 ), t.transform.rotation, circleSize ); } }
そして、このスクリプトを CircleCap ハンドルを表示したいオブジェクトにアタッチします。
using UnityEngine;
[ExecuteInEditMode] public class DummyCircleCap : MonoBehaviour { public void Start( ) { Debug.Log( "I have CircleCap Handles attached to this transform!" ); } }