using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEngine; [CustomEditor(typeof(DisplayAllJoints))] public class DisplayAllJointsEditor : Editor { protected void OnSceneGUI() { DisplayAllJoints display = (DisplayAllJoints)target; Transform[] childrens = display.gameObject.GetComponentsInChildren(); for (int i = 0; i < childrens.Length; ++i) { Transform child = childrens[i]; if (child == display.transform) { continue; } Transform transform = child.transform; Handles.color = Handles.xAxisColor; Handles.ArrowHandleCap( 0, transform.position, transform.rotation * Quaternion.LookRotation(Vector3.right), display.size, EventType.Repaint ); Handles.color = Handles.yAxisColor; Handles.ArrowHandleCap( 0, transform.position, transform.rotation * Quaternion.LookRotation(Vector3.up), display.size, EventType.Repaint ); Handles.color = Handles.zAxisColor; Handles.ArrowHandleCap( 0, transform.position, transform.rotation * Quaternion.LookRotation(Vector3.forward), display.size, EventType.Repaint ); } } }