label | フィールドの上に表示するラベル |
value | 編集する値 |
options | 特別なレイアウト対応をするためのレイアウトオプションリスト。ここに渡された値は style で定義された設定を上書きします。See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight. |
Vector3 ユーザーによって設定された値
Vector3 を入力する X、Y と Z のフィールドを作成します。
" 3D 空間でふたつの位置の間かふたつの GameObjects の間の距離を測定します。"
// Simple Script that measures the distance between 2 GameObjects // or measure the distance between 2 positions in 3D space class EditorGUILayoutVector3Field extends EditorWindow { var distance : float = 0; var obj1 : Vector3; var obj2 : Vector3; @MenuItem("Examples/Measure Distance between 2 objects") static function Init() { var window = GetWindow(EditorGUILayoutVector3Field); window.Show(); } function OnGUI() { GUILayout.Label("Select an object in the Hierarchy view and click 'Capture Position'"); EditorGUILayout.BeginHorizontal(); obj1 = EditorGUILayout.Vector3Field("GameObject 1:", obj1); if(GUILayout.Button("Capture Position")) obj1 = Selection.activeTransform.position; EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); obj2 = EditorGUILayout.Vector3Field("GameObject 2:", obj2); if(GUILayout.Button("Capture Position")) obj2 = Selection.activeTransform.position; EditorGUILayout.EndHorizontal(); EditorGUILayout.LabelField("Distance:", distance.ToString()); if(GUILayout.Button("Close")) this.Close(); } function OnInspectorUpdate() { distance = Vector3.Distance(obj1,obj2); this.Repaint(); } }